- 浏览: 121849 次
- 性别:
- 来自: 北京
-
最新评论
终于写好无向图找割点了,笔记一下
割点的充分必要条件是
1. 对于dfs搜索树的根,有至少两个子树
2. 对于非dfs树的根,有至少一个子树
p.s.其实这两个条件是一样的,因为对于非根节点,有一条边连到父节点,所以把它看成是树根的时候,就有至少两个子树了
割点的充分必要条件是
1. 对于dfs搜索树的根,有至少两个子树
2. 对于非dfs树的根,有至少一个子树
p.s.其实这两个条件是一样的,因为对于非根节点,有一条边连到父节点,所以把它看成是树根的时候,就有至少两个子树了
#include <cstdio> #include <cstring> #include <vector> #include <set> #include <stack> using namespace std; vector<vector<int> > g; set<int> node; vector<int> dfn, low, sub; int cnt; void dfs(int u) { dfn[u] = low[u] = cnt++; for (int i = 0; i < g[u].size(); ++i) { int v = g[u][i]; if (dfn[v] == -1) { dfs(v); low[u] = min(low[u], low[v]); if (dfn[u] <= low[v]) ++sub[u]; } else { low[u] = min(low[u], dfn[v]); } } } int main() { int tcs = 1, u, v; while (true) { g.clear(); node.clear(); bool read = false; while (scanf("%d", &u), u != 0) { read = true; scanf("%d", &v); int t = max(u, v) + 1; t = max((int)g.size(), t); g.resize(t); g[u].push_back(v); g[v].push_back(u); node.insert(u); node.insert(v); } if (!read) break; dfn.assign(g.size(), -1); low.assign(g.size(), 0); sub.assign(g.size(), 0); cnt = 0; int root = *node.begin(); dfs(root); --sub[root]; if (tcs > 1) printf("\n"); printf("Network #%d\n", tcs++); bool has = false; for (int i = 0; i < g.size(); ++i) if (sub[i] >= 1) { has = true; printf(" SPF node %d leaves %d subnets\n", i, sub[i] + 1); } if (!has) printf(" No SPF nodes\n"); } return 0; }
发表评论
-
lower_bound and upper_bound
2012-02-09 00:36 1202/** * @brief Finds the ... -
HDU 3954
2012-02-05 10:43 880线段树变种,也是在2logn段上面做文章 /* * ... -
HDU 4027
2012-02-04 22:09 908线段树变种 在2logn段上面做文章,swap(x, y)太阴 ... -
ICPC编码建议
2011-10-28 09:52 972写代码最重要的是清晰,包括思路的清晰和代码结构的清晰。我们无法 ... -
[转载]TopCoder插件
2011-09-08 22:13 1038转载自:http://acm.cugb.edu.cn/blog ... -
UVALive 5112 - Sales Prediction
2011-01-06 10:19 1243封装了矩阵类 比赛做得很郁闷,为什么别人写得很长、很罗嗦的代码 ... -
hdu 3236
2010-12-12 14:10 847终于能过这道题了,算是背包必做题之一吧 /* * Au ... -
pku 1018
2010-12-11 15:18 665写了两三个版本,最后这个效率最高 #include < ... -
布斯(Booth)乘法
2010-10-07 19:59 1188源自http://watashi.ws/blog/1515/z ... -
高斯消元
2010-10-07 14:18 855import java.util.*; import j ... -
整数划分
2010-10-07 10:38 871#include <cstdio> #inc ... -
Treap
2010-09-18 22:19 1031// Treap // Tested: bjtu1057 ... -
矩阵快速幂
2010-09-18 14:24 1082typedef LL matrix[55][55]; ... -
maximum clique 最大团
2010-09-02 18:12 1190最大团模板 #include <cstdio> ... -
计算Jacobi符号
2010-08-31 13:15 1360Quadratic reciprocity The Jacob ... -
Java 高效I/O
2010-08-19 16:54 833static BufferedReader cin = ... -
DLX pku 3076
2010-08-11 23:45 940标准数独,精确覆盖 // pku3076.cpp #in ... -
DLX hust 1017
2010-08-11 16:50 895“精确覆盖”问题 #include <cstdio& ... -
DLX hdu 3498
2010-08-11 16:48 1091“多重覆盖”或“重复覆盖”问题 #include < ... -
hdu 3509
2010-08-09 11:22 1040推导公式的题目,矩阵幂关键就在于构造系数矩阵 备忘: S(n, ...
相关推荐
【标题】"zju.rar_ZJU_zju.rar_zju2104.cpp" 提供的信息显示,这可能是一个与浙江大学(Zhejiang University,简称ZJU)相关的编程资源包。"zju2104.cpp" 文件名暗示这可能是针对浙大某次课程或竞赛的C++代码,编号...
标题“zju1001-1399的数据”暗示了这是一系列与浙江大学(Zhejiang University,简称ZJU)相关的编程题目或测试数据。这些数据可能被用于计算机科学竞赛、在线判题系统(如POJ、ZOJ等)或者是浙江大学计算机课程的...
【标题】"zju.rar_zju 31_zju2104.cpp" 指的是一个压缩包文件,其中包含了解决浙江大学(zju.edu.cn)在线编程平台上的问题的C++源代码。这个文件可能是一个参赛者或学习者提交的解决方案,用于处理特定的算法或编程...
【标题】"ZJU1025 Wooden Sticks" 是浙江大学(Zhejiang University,简称ZJU)在线编程竞赛平台ACM上的一道题目,编号为1025。这道题目主要考察参赛者的算法设计和实现能力,属于计算机科学中的经典问题。 【描述...
【标题】"acm新手必备 浙大acm解答 代码库 zoj zju" 提供的信息表明,这个压缩包包含的是ACM竞赛相关的代码,主要来自浙江大学(Zhejiang University,简称ZJU)的在线算法竞赛平台ZOJ(Zhejiang Online Judge)。...
【标题】"zju700代码 浙大oj代码" 涉及的主要知识点是浙江大学(Zhejiang University,简称ZJU)在线评测系统ZOJ(Zhejiang Online Judge)中的编程题目解决方案。ZOJ是为ACM/ICPC(国际大学生程序设计竞赛)训练而...
根据提供的文件信息,这份文档是浙江大学操作系统课程的讲义,属于第2章的内容,教材则是被称为“操作系统的恐龙书”的资料。该讲义涉及的主题包括操作系统服务、用户操作系统界面、系统调用、系统程序、操作系统...
zju电机学作业.pdf
【标题】"zju1048.rar_acm.zju.edu._pid_show_zju acm" 指向的是一个与浙江大学(Zhejiang University,简称ZJU) ACM竞赛相关的压缩文件,其中包含了对问题1048 "Financial Management"的解答。"acm.zju.edu." 和 ...
【标题】"ZJU/zoj 题库上的部分题源码"涉及的知识点主要集中在ACM(国际大学生程序设计竞赛)编程领域,尤其是浙江大学(ZJU)ZOJ(Zhejiang University Online Judge)题库中的题目解决方案。ZOJ是一个在线编程评测...
acm zju 额度cnacm zju 额度cnacm zju 额度cnacm zju 额度cnacm zju 额度cn
标题 "zoj 1140-zju 2433 简单题的部分答案" 暗示了这是一个关于编程竞赛题目的解答集合,其中涵盖了ZOJ(浙江大学在线评测系统)上的两道题目——ZOJ 1140 和 ZJU 2433。这些题目可能属于算法或数据结构的范畴,...
在此,我们将深入探讨Leader统帅BCD-411WLLF4D5ZJU1冰箱说明书中的重点内容,为用户全面了解和正确使用这款冰箱提供详细的指导。 首先,Leader统帅BCD-411WLLF4D5ZJU1冰箱是一款家用电冰箱,它被设计成可以适应多种...
【标题】:“浙江大学(ZJU)编程竞赛解题报告” 【内容】: 浙江大学(ZJU)在编程竞赛领域有着丰富的活动,这些比赛通常包括ACM/ICPC(国际大学生程序设计竞赛)、ZOJ(浙大在线评测系统)等平台上的题目。解题...
zju 1642 Match for Bonus DP,滚存??zju 1642 Match for Bonus DP,滚存??zju 1642 Match for Bonus DP,滚存??zju 1642 Match for Bonus DP,滚存??zju 1642 Match for Bonus DP,滚存??
2、课后作业题6.8 3、Minimax 给一个只有叶子节点值的图 叉掉α-β pruning 4、贝叶斯网络 5、Markov Network 给一个Mark
《ZJU数据库原理大程——图书管理系统》是浙江大学数据库原理课程的一个实践项目,旨在让学生深入理解数据库在实际应用中的工作原理,特别是如何利用数据库技术构建一个完整的图书管理系统。在这个项目中,学生需要...
zju题目与解答集合,学习ACM编程不可多得的好东西。
浙江大学(Zhejiang University,简称ZJU)的在线判题系统ZOJ(Zhejiang Online Judge)汇集了大量的编程竞赛题目,其中动态规划题目是众多参赛者提升技能的重要资源。 本压缩包“zju动态规划试题选集”包含了ZOJ上...
ZJU_V1.2.10.apk