就是看是否有一些点,从其他任何点出发都可到达定理:有向无环图中唯一出度为0的点,一定可以由任何点出发均可达。所以缩点,若出度为零的点(强联通分量)唯一,则答案为该强联通分量中点的度数。若不唯一,答案为0,易证。Code(懒得Tarjan,用了两次DFS): 1 #include 2 #include...
分类:
移动开发 时间:
2014-09-09 19:52:19
阅读次数:
259
一、图的可行遍历 1)欧拉图 条件:1、图连通;2、奇度点数为0或2; 算法(一次dfs) 时间复杂度O(E),空间复杂度O(E) 1 //前向星,vis[]标记走过的边,cnt初始为1,i的反向边为i^1 2 void addedge (int u, int v) { 3 ...
分类:
其他好文 时间:
2014-09-09 18:16:09
阅读次数:
392
两遍DFS。第一遍统计以每个点为根的子树大小,第二遍更新答案。 1 #include 2 #include 3 using namespace std; 4 int v[2000001],w[2000001],first[2000001],next[2000001],en,sz[1000001]; ...
分类:
其他好文 时间:
2014-09-09 18:07:09
阅读次数:
188
前年的省赛题,难点在于这个石头的推移不太好处理后来还是看了阳神当年的省赛总结,发现这个石头这里,因为就四五个子,就暴力dfs处理即可。先把石头当做普通障碍,进行一遍全图的dfs或者bfs,找到可以找的点,然后dfs每次探索新区域的新点即可,想通了这里很好做了#include #include #in...
分类:
其他好文 时间:
2014-09-09 17:57:19
阅读次数:
270
思路:用邻接表存图,卡vector【这里被卡哭了QAQ】,用dfs遍历的顺序重新给节点编号,遍历时记录儿子数目。用dfs序建立线段树,change的时候单点更新,查询某子树上的苹果树即是查询该节点[i, i+childnum]这个区间的苹果数目,i指dfs序。总结:邻接表出边入边傻傻搞不清楚QAQA...
分类:
其他好文 时间:
2014-09-09 17:55:19
阅读次数:
243
水题保平安
Red and Black
Time Limit: 1000MS
Memory Limit: 30000K
Total Submissions: 22640
Accepted: 12223
Description
There is a rectangular room, covered with square tiles...
分类:
其他好文 时间:
2014-09-09 16:07:49
阅读次数:
256
在棋盘上放置棋子使它们任意两个都不在同一行或同一列dfs(x,k)表示的是访问到第x行已放置了k个棋子这道题我们以每行或者每列为单位来看题,每次搜索都对一整行进行访问,并在安置棋子的点的列位置上使其visit[col]=1如果放置成功那么dfs(x+1,k+1),再进行回溯不论是否成功,都要dfs(...
分类:
其他好文 时间:
2014-09-09 15:31:09
阅读次数:
234
这道题很简单,该怎么做,题目已经告诉我们了!
解题思路:考的就是一个DFS的应用,然后在进行一个选择判断就行了!
由于时间的关系,为了避免超时,可以优化进行剪枝一下!就是在找到了我们所需要的答案后,就不必再进行DFS搜索了,即可直接退出来了,然后输出答案即可!...
分类:
其他好文 时间:
2014-09-09 13:27:58
阅读次数:
236
Letter Combinations of a Phone Number
Total Accepted: 15964 Total
Submissions: 60700My Submissions
Given a digit string, return all possible letter combinations that the number could repr...
分类:
其他好文 时间:
2014-09-09 13:13:39
阅读次数:
191