![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
bnc1010
这个作者很懒,什么都没留下…
展开
-
CodeForces 1051F The Shortest Statement(树上两点距离)
题目链接:http://codeforces.com/problemset/problem/1051/F题意:有n个点m条边,给出m条不重复的边。有q询问,每个询问有x,y,输出这两个点的最短距离。有一个重要条件m-n<=20.思路:如果是n-1条边的话,就是一棵树。对于一棵树,求任意两点的最小距离就是dis[x]+dis[y]-2*dis[lca],只需要预处理父亲数组和每个点到根的距...原创 2018-09-25 16:01:53 · 300 阅读 · 0 评论 -
codeforces problem 1213 F Unstable String Sort(tarjan + topu)
链接题意:有两个长度为n的数组p和q,分别表示s[pi]≤s[pi+1]s[p_i] \le s[p_{i + 1}]s[pi]≤s[pi+1]、s[qi]≤s[qi+1]s[q_i] \le s[q_{i + 1}]s[qi]≤s[qi+1],然后构造出一种符合条件的字符串。思路:这中题目往往会想到拓扑排序,仅仅使用拓扑排序的话,有一些情况比如说环就不能够很好地处理。容易想到在...原创 2019-09-11 14:13:36 · 212 阅读 · 0 评论 -
codeforces 1217D - Coloring Edges(topu)
链接题意:有n个点m条边组成的有向图,要给边涂色,使得不存在一个由相同颜色组成的环。思路:如果图中本来就没有环,全部涂成一种颜色即可。有环的情况时,由于一个组成一个环的边必定有两种边,编号小的–>编号大的、编号大的–>编号小的。把这两种边涂成两种颜色即可。参考代码:#include <bits/stdc++.h>using namespace std;...原创 2019-09-23 16:12:35 · 236 阅读 · 0 评论