摘要:
题意:给出一个有向图(不一定连通),问最多可添加多少条边而该图仍然没有强连通。思路: 强连通分量必须先求出,每个强连通分量包含有几个点也需要知道,每个点只会属于1个强连通分量。 在使图不强连通的前提下,要添加尽可能多的边。边至多有n*(n-1)条,而已经给了m条,那么所能添加的边数不可能超过k=... 阅读全文
摘要:
题意: 给一个有向图,问添加几条边可以使其强连通。思路: tarjan算法求强连通分量,然后缩点求各个强连通分量的出入度,答案是max(入度为0的缩点个数,出度为0的缩点个数)。 1 #include 2 #define LL long long 3 #define pii pair 4 us... 阅读全文
该文被密码保护。 阅读全文
摘要:
转自http://blog.csdn.net/jokes000/article/details/7521259 名词积累: 数据库(Database):存放和提供数据的“库房” 数据(Data):数据库中存储的基本对象。 数据库管理系统(DBMS):位于用户与操作系统之间的一层数据管理软件。 数据库 阅读全文
摘要:
后缀数组——处理字符串的有力工具 阅读全文
摘要:
题意: 判断所给的有向图是否是一个强连通图。思路: 如果连通分量大于1则必定No,如果强连通分量大于1也是No。tarjan算法求强连通分量。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #i... 阅读全文
摘要:
关于如何求强连通分量的知识请戳https://www.byvoid.com/blog/scc-tarjan/ 1 void DFS(int x) 2 { 3 dfn[x]=lowlink[x]=++dfn_clock; 4 stac.push_back(x); 5 for(i... 阅读全文
摘要:
题意: 给出一个连通图,要求将某些点涂黑,使得无论哪个点(包括相关的边)撤掉后能够成功使得剩下的所有点能够到达任意一个涂黑的点,颜料不多,涂黑的点越少越好,并输出要涂几个点和有多少种涂法。思路: 要使得任意撤掉一个点都能使其他点能够到达黑点,那么点双连通分量能保证这点,那么就在同个点双连通分量内... 阅读全文