拓扑排序
Healer66
他是谁啊?他究竟是什么身份啊?
展开
-
HDU - 5438 - Ponds (拓扑排序)
题意: 删除入度为一或零的所有池塘,最后求所有联通快内点的数量是奇数的value和。 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 1e4 +100; int vis[maxn],degree[maxn];//是否访问,以及该点的入度 int val[max...原创 2019-02-01 17:39:36 · 206 阅读 · 0 评论 -
HDU - 5438 - Ponds (拓扑排序&&并查集)
题意: 题意:有n个池塘和m个管道;每个池塘的价值是v, 现在要删除池塘,删除的池塘必须是最多只连接一个管道,否则会爆炸;求最后相连的池塘是奇数个的价值总和是多少。 思路: 拓扑排序后求和 #include <bits/stdc++.h> using namespace std; const int maxn = 1e4+ 7; typedef long long ll; c...原创 2019-04-21 17:15:35 · 236 阅读 · 0 评论 -
HDU - 1811 - Rank of Tetris (并查集&&拓扑排序)
思路: 先把‘=’的数合并成一个,然后拓扑排序,如果拓扑过程中可选择点的数量超过一个,则信息不完全。 如果有环,说明冲突,那么num就不会到0. #include <bits/stdc++.h> using namespace std; const int maxn = 1e4 + 10; int n,m,fa[maxn],X[maxn * 2],Y[maxn * 2]; i...原创 2019-04-17 19:38:04 · 195 阅读 · 0 评论