题目链接: Poj 1236 Network of Schools题目描述: 有n个学校,学校之间有一些单向的用来发射无线电的线路,当一个学校得到网络可以通过线路向其他学校传输网络,1:至少分配几个网络才能够让所有学校被网络覆盖?2:至少要加几条线路就能做到在任意一个学校安装网络都可以覆盖全部学.....
分类:
Web程序 时间:
2015-07-20 16:08:44
阅读次数:
133
软件构成了一些树和一些环, 对于环我们要不不选, 要么选整个环. 跑tarjan缩点后, 新建个root, 往每个入度为0的点(强连通分量) 连边, 然后跑树dp( 01背包 )-------------------------------------------------------------...
分类:
其他好文 时间:
2015-07-20 16:06:19
阅读次数:
85
题目链接: Poj 2186 Popular Cows题目描述: 有n只牛,牛之间存在一些关系,比如a认为b很受欢迎,b认为c很受欢迎,这样呢,a也会认为c很受欢迎,问根据给出的关系,有多少头牛被其他所有的牛都认为是受欢迎的?解题思路: 对于一个有向无环图来说,其中有且仅有一个点出度为零,那么...
分类:
其他好文 时间:
2015-07-20 12:54:41
阅读次数:
90
LCA tarjan算法模板题
题意:给一个无根树,有q个询问,每个询问两个点,问两点的距离。
用tarjan离线算法算出每个询问的两点的最近公共祖先
ans[i]=dis[x[i]]+dis[y[i]]-2*dis[z[i]]; // x[i],y[i]分别存储每次询问的两点,z[i]存储这两点的最近公共祖先
#include "stdio.h"
#include "stri...
分类:
编程语言 时间:
2015-07-20 11:05:05
阅读次数:
182
博主图论比较弱,搜了模版也不会用。。。所以决心学习以下tarjan算法。割点和割边的概念不在赘述,tarjan能在线性时间复杂度内求出割边。重要的概念:时间戟,就是一个全局变量clock记录访问结点的时间。一个无向图dfs会形成一个森林,当图只有一个连通分量时,就只有一棵树。由于在无向图中,除了树边...
分类:
其他好文 时间:
2015-07-19 23:05:36
阅读次数:
551
有一个普通二叉树,AB分别为两个子节点,求AB最近(深度最浅)的公共父节点。
此题仍然是一个老题,有着多种解决方法,本文针对其中三种方法来进行分析总结。
这三种方法分别是:递归法,tarjan离线算法,RMQ在线算法。
递归法
递归法比较直观简单,思路如下:
首先判定当前节点root是否是A节点或者B节点,若是的话直接返回该节点
若不是,分别对root节点的左右子树进行递归查找最小公共...
分类:
其他好文 时间:
2015-07-19 13:36:58
阅读次数:
1468
整理了下模板。。。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #define PAU putchar(' ') 8 #define ENT putchar('\n') 9 using namespace s...
分类:
其他好文 时间:
2015-07-19 10:03:29
阅读次数:
177
膜拜大神,链接在此:https://www.byvoid.com/zhs/blog/scc-tarjan
分类:
编程语言 时间:
2015-07-16 11:22:24
阅读次数:
115
题意:给一个n个顶点m条弧的简单有向图(无环无重边),求最多可以添加多少条弧使得添加后的有向图仍为简单有向图且不是一个强连通图,如果给的简单有向图本来就是强连通图,那么输出-1.
分析:
1.用tarjan算法求出强连通分量的个数,如果个数为1,那么输出-1,结束,否则执行2
2.假设将一些强连通分量合并为有n1个顶点简单完全图1,而将剩下的强连通分量合并为n2个顶点...
分类:
其他好文 时间:
2015-07-15 19:20:57
阅读次数:
88
NetworkTime Limit:5000MSMemory Limit:65536KTotal Submissions:7298Accepted:2651DescriptionA network administrator manages a large network. The network ...
分类:
其他好文 时间:
2015-07-14 22:20:23
阅读次数:
105