【2019杭州集训】12.12~14训练总结
我菜爆了,这几天题目都改不完还来写总结?
12.12
简要题解
- T1(环),比较妙的构造题,转化为相邻的1的距离同构,然后发现这里的同构实际上是一个子问题,递归下去解决。
- T2(DNA序列):只会暴力
给n个序列,每个序列要选择一个前缀,以任意顺序排列n个前缀,问字典序最小的前缀是什么、
贪心。
首先对于每一个字符串S,找出一个最短前缀x使得xinf<=S+‘Z’,然后按照x排序分类,x相同按照除去S的最大重复x的前缀后的Res+'Z’大到小排序。
因为我们要让尽量小的x重复很多次,最后的Res只有一个,并且要让它尽量小。
这样我们就确定了顺序,后往前枚举并暴力即可。 - T3(探寻):没时间打了。
给一个有根树,第i条边经过第一次的时候要花ci的钱,每一个点有di的钱可以获得,问从根最终结束于end(给出)最少要带多少初始的钱出门。
类似的题目我们之前做过。
在能到的点里面我们肯定是要先选花费少的,所以按照每一个点到它的父亲的花费小到大加入,但是我们当前点可能并不能到这个点,所以需要将这个待加入的点与它的父亲合并,然后就不难解决了。
12.13
简要题解
- T1(gcd和lcm):简单莫比乌斯反演。把a离线之后一边插入一边询问,用一个树状数组。
- T2(平面图):首先转对偶图,删边变成了加边,然后发现一个连通块对应了对偶图中的一个环。并查集维护即可完成询问1.
然后在成环的时候染色即可,用启发式分裂,即两边每一次遍历一条边,这样就是的了。
- T3(路径):DP后找规律可以发现,答案为
- 可以通过DP的式子归纳证明。然后注意到有0的情况,可以分类出来处理。
12.14
-
pty出(组)了一套
毒瘤题高质量难题。口胡and啥也不会 -
T1:可以类似差分约束地去建网络流,将限制写成方程后变成线性规划,然后可以转化为神奇的网络流做?
-
T2:求一个带标号n个点的联通图,使得其中的点双的大小只在一个给定的集合S里面。
考虑如果知道了点双大小为n的方案数,那么贡献组合成一颗树的贡献不难推出来???
点双的贡献可以多项式exp???
-
T3:唯一改起来比较清真的题目,因为这题最关键的是一个结论——最终围成的路径一定在两两的最短路上,否则就可以缩紧到最短路上。那么把所有的最短路图建出来,从左上角到左上角跑一个最短路的环即可。但是注意到可能经过最短路的时候没有包括关键的点,有一种神奇的拆点方法,将每一个格点分成四个点,最短路的两边不能跨过,关键点内部的点全部删掉,以及一些操作(雾),因为(1,1)一定有,所以直接跑(1,1)的右下到左下的一个最短路即可跑成一个环了。