codeforces #310 div1 D】的更多相关文章

算得上是比较水的E题了吧,自己想了想写了写居然1A了 对于这道题,我们很容易想到对于原图的一个边双,定向后任意两点间一定可达 那么我们可以求出原图的边双并将每个边双缩成一个点 那么原图就变成了无环的无向图,也就是一片森林 之后我们考虑每个任务: 1.如果S和T处于一个边双里,显然是可行的 2.如果S和T处于两棵树中,显然不连通不可行 3.S和T处于一棵树中,那么S->lca的所有边都是向上的,lca->T的所有边的都是向下的 对于第三种情况,我们可以在S上打一个up标记,在T上打一个down标…
一开始写了个暴力模拟绳子的摆动轨迹 然后在Test 16 T掉了 后来%了一下别人的代码,发现需要对特殊情况进行特殊处理 首先我们考虑绳子的向右摆动,设当前位置为p,绳子当前长度为L 如果其旋转中心位置>p+L/2,那么绳子长度至少会缩短一半 假设一直这样下去,时间复杂度为log(L) 但是当旋转中心位置<p+L/2的时候就比较复杂了,我们发现暴力模拟很容易被卡成单次O(L) 因为这个时候会出现绳子不断地在两个点之间转来转去,每次减少绳长很少 但是我们又会发现挡在两个点之间旋转时候,转一圈减少…
操作无论是U还是L,都会使原图形分裂成两个图形,且两个图形的操作互不影响 我们又发现由于操作点只可能在下斜线上,如果将操作按x排序 那么无论是U还是L,都会将操作序列完整分割成两半,且两个操作序列互不影响 这样我们就可以对操作进行分治,每次找到最靠前的操作,并将操作序列分割 对于U操作而言,计算其答案只需要知道当前列最靠下的那一行 对于L操作而言,计算其答案只需要知道当前行最靠右的那一列 分治的时候动态维护即可 注:这样的话最坏情况会递归20w层,在CF上会爆栈,所以我的代码人为的开了栈空间 #…
我们考虑n-1座桥每座桥需要的长度在一个区间[L,R]中 之后我们现在有m座桥,每个桥的长度为k 题意就是要求一个匹配方案 显然如果数据范围不大直接KM就可以了 可是20w的数据KM显然要T 所以我们考虑这是个区间问题,我们可以贪心 考虑两座桥A,B, A的区间被B的区间所包含 那么优先考虑A总比优先考虑B优 所以我们可以将区间按右端点从小到大排序,这样被包含的区间永远是优先考虑的 之后我们考虑选哪个点与当前区间匹配 这个时候可以考虑当前的决策对后面的影响 如果后面的区间包含当前区间,那么无论怎…
首先我们考虑最暴力的拆解拼凑 显然拆分掉所有的链需要 n-m 次 之后拼凑需要 n-1 次 然后由题目规定可知:只有从1出发且连续的链不用拆掉,其余的都必须拆掉(因为两个都套有娃娃的套娃不能组合) 我们只需要计算从1出发且连续的链的长度即可 设长度为L 则ans=(n-m)+(n-1)-(L-1)*2 这里的L-1是因为1并没有算入(n-m)+(n-1)中 #include<cstdio> #include<cstring> #include<cstdlib> #inc…
codeforces 407 div1 B题(Weird journey) 传送门 题意: 给出一张图,n个点m条路径,一条好的路径定义为只有2条路径经过1次,m-2条路径经过2次,图中存在自环.问满足条件的路径数 题解: 推论:对于一条边u-->v,我们将其选作为那两条边之一,那么剩下一条边必然与之相邻或者是自环,因为这样才能满足这两条边只走1次. 那么这条边的贡献值为这条边的相邻边数+自环数,假如这条边本身为自环,那么由于剩下的边可以任选(前一个推论),贡献值为m-1 这个AC时间很6啊23…
codeforces 407 div1 A题(Functions again) Something happened in Uzhlyandia again... There are riots on the streets... Famous Uzhlyandian superheroes Shean the Sheep and Stas the Giraffe were called in order to save the situation. Upon the arriving, the…
首先我们要注意到一个事情 如果一个灯塔向左覆盖,那么比他小的某个灯塔如果向左覆盖的端点大于当前塔向左覆盖的端点,他一定向右覆盖 对于当前灯塔向右覆盖也是同理 那么我们只需要记录当前覆盖到的端点就可以完成转移了 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<cstdlib> #include<vector> using…
总算搞定了这一场比赛的题目,感觉收获蛮大 其中A,B,C都能通过自己的思考解决掉 D题思路好神,E题仔细想想也能想出来 以后坚持每两天或者一天做一场CF的div1的全套题目 除非有实在无法做出来的题目,每道题目还是都要写题解的 (我这算不算立flag? 本蒟蒻写的题解的链接: A:http://www.cnblogs.com/joyouth/p/5352953.html B:http://www.cnblogs.com/joyouth/p/5352932.html C:http://www.cn…
B. DZY Loves FFT 题目连接: http://codeforces.com/contest/444/problem/B Description DZY loves Fast Fourier Transformation, and he enjoys using it. Fast Fourier Transformation is an algorithm used to calculate convolution. Specifically, if a, b and c are s…