●CodeForce 293E Close Vertices】的更多相关文章

题链: http://codeforces.com/contest/293/problem/E题解: 点分治,树状数组 大致思路和 POJ 1741 那道点分治入门题相同, 只是因为多了一个路径的边数限制, 所以在统计答案时, 要用数据结构维护一下在满足距离限制的情况下,有多少点也满足边数限制. 树状数组维护到当前的根(重心)的距离为x时的点的个数. 在calc函数中,记录dep[u]表示u到当前的根(重心)的边数, 然后统计u号点可以和多少点组成合法点对时,就查询树状数中有多少点满足到根的距离…
题目链接 正解:点分治+树状数组. 点分治板子题,直接点分以后按照$w$排序,扫指针的时候把$w$合法的路径以$l$为下标加入树状数组统计就行了. 写这道题只是想看看我要写多久..事实证明我确实是老年选手了,这种傻逼题写+调竟然用了$40min$.. #include <bits/stdc++.h> #define il inline #define RG register #define ll long long #define lb(x) (x & -x) #define N (3…
题目:http://codeforces.com/contest/293/problem/E 仍旧是点分治.用容斥,w的限制用排序+两个指针解决, l 的限制就用树状数组.有0的话就都+1,相对大小不变. 切勿每次memset!!!会T得不行.add(sta[ l ].len)即可,但要判一下(l==r)以防不测.(真的有那种数据!) 最后注意树状数组的范围是L(即L+1),不是n.不然可以尝试: 2 10 12 1 5 #include<iostream> #include<cstdi…
题目传送门 题意:现在有一棵树,每条边的长度都为1,然后有一个权值,求存在多少个(u,v)点对,他们的路劲长度 <= l, 总权重 <= w. 题解: 1.找到树的重心. 2.求出每个点到中心的长度和权值. 3.对所有点都询问出合法点的个数(包括同一颗子树)加到答案上. 4.对于每一棵子树内部都找到合法点的个数从答案中减去. 5.递归处理每一颗子树. 我们现在最大的问题就是怎么计算合法点的个数. 我们把点的信息记录下来之后,按照权重从小到达排序. 然后我们就可以用2个端点维护出 a[l].we…
强连通分量 标签: 图论 算法介绍 还记得割点割边算法吗.回顾一下,tarjan算法,dfs过程中记录当前点的时间戳,并通过它的子节点的low值更新它的low,low值是这个点不通过它的父亲节点最远可以到达的dfn值最小的点,如果当前的节点的low>他父亲节点的dfn说明它不能通过其他的边到达它的父亲,那么它和他父亲的这条边就是割边,在这个算法中有三个标号,VIS数组,标记为0表示没有被访问到,标记为1表示这个点正在搜索它的自孩子,标记为2表示这个点已经处理过了,就是已经找到了它属于哪个联通块,…
Bahosain is walking in a street of N blocks. Each block is either empty or has one lamp. If there is a lamp in a block, it will light it’s block and the direct adjacent blocks. For example, if there is a lamp at block 3, it will light the blocks 2, 3…
C time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output After making bad dives into swimming pools, Wilbur wants to build a swimming pool in the shape of a rectangle in his backyard. He has set u…
e,还是写一下这次的codeforce吧...庆祝这个月的开始,看自己有能,b到什么样! cf的第二题,脑抽的交了错两次后过了pretest然后system的挂了..脑子里还有自己要挂的感觉,果然回头一小改就过了! 只能呵呵...C题还是看了下,又没写,也许写不出吧...的确时候还是看了别人的额,自己写只到第8组WA! 希望下次少,一点! 哎,等我不,b了这个世界也许都不同了!…
Given a Directed Graph and two vertices in it, check whether there is a path from the first given vertex to second. For example, in the following graph, there is a path from vertex 1 to 3. As another example, there is no path from 3 to 0. We can eith…
E. Close Vertices You've got a weighted tree, consisting of n vertices. Each edge has a non-negative weight. The length of the path between any two vertices of the tree is the number of edges in the path. The weight of the path is the total weight of…