并查集+拓扑排序。使用并查集解决a = b的情况。 1 #include 2 #include 3
#include 4 #include 5 using namespace std; 6 7 #define MAXN 10005 8 9 typedef
struct ...
分类:
其他好文 时间:
2014-06-11 21:54:30
阅读次数:
284
拓扑排序:(1)由偏序变成全序的过程!直观的说,偏序指集合中仅有部分成员之间可比较!而全序指集合中全体成员之间均可比较!
(2)将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。
数据结构中进行拓扑排序的方法:
方法一:
(1)在有向图中选一个没有前驱的顶点且输出之!
(2)从图中删...
分类:
其他好文 时间:
2014-06-10 14:22:43
阅读次数:
447
http://poj.org/problem?id=1691
大致题意:给出n个矩形,其参数有左上角顶点坐标,右下角顶点坐标以及该矩形所涂颜色。规定是涂当前矩形当且仅当它上面的矩形都已经被涂了色。若当前涂的颜色和上一个所涂的不同,就要换一种颜色的刷子。问应该按怎样的顺序给这n个矩形涂色使换的刷子总数最少。
思路:显然涂色是有先后顺序的,就很容易想到拓扑排序。那么首先根据矩形相交...
分类:
其他好文 时间:
2014-06-10 14:09:15
阅读次数:
198
bool Topo()
{
int sum = 0;
while(1)
{
queue Q;
for(int i = 1; i <= n; i++)
if(!in[i])
Q.push(i);
sum += Q.size();
if(sum == n)
return true;
if(!Q.size())
return false;
whi...
分类:
其他好文 时间:
2014-06-10 13:29:29
阅读次数:
236
poj2186Popular
Cows分析:直接求一下强连通分量,对于同一个强连通分量里面的结点状态是相同的,要求有多少个人被其他所有的人都认可,只有可能是拓扑排序的最后一个强连通的结点个数,判断一下其他节点是否都可以到该联通分量就ok了。
1 #include 2 #include 3 #in.....
分类:
其他好文 时间:
2014-06-08 21:44:25
阅读次数:
307
HDU 4324 Triangle LOVE (拓扑排序)
题目大意:
T组测试数据,每组数据一个n表示n个人,接下n*n的矩阵表示这些人之间的关系,输入一定满足若A不喜欢B则B一定喜欢A,且不会出现A和B相互喜欢的情况,问你这些人中是否存在三角恋。
解题思路:
拓扑排序思想很简单,就是找入度为0的点,放入队列,用队列来实现。
拓扑排序后判断是否有环存在,有环必然存在是三角恋。
证明:
假设存在一个n元环
首先,...
分类:
其他好文 时间:
2014-06-08 18:31:38
阅读次数:
241
确定比赛名次
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 10604 Accepted Submission(s): 4150
Problem Description
有N个比赛队(1
I...
分类:
其他好文 时间:
2014-06-08 04:43:40
阅读次数:
285
Triangle LOVE
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 2138 Accepted Submission(s): 898
Problem Description
Recently, scienti...
分类:
其他好文 时间:
2014-06-08 02:56:49
阅读次数:
301