
拓扑排序
AKone123456
这个作者很懒,什么都没留下…
展开
-
可达性统计------------------------------思维(拓扑排序+dp)
解析: 由题意可知是一个有向无环图 DAG,所以我们做一遍拓扑排序。 然后根据dp的思想 f(u)= f(u1) ∪ f(u2) ∪ f(u3) 对于想要求解出u的情况。必须把u1,u2,u3求解出来。所以我们倒着遍历拓扑排序后的数组。然后借助bitset数组统计1的情况即可 #include<bits/stdc++.h> using namespace std; const int N=3e4+10; bitset<N> f[N]; vector<int> G[N..原创 2020-05-25 23:10:25 · 220 阅读 · 0 评论 -
烦人的依赖-----------------------思维(拓扑排序)
解析: 拓扑排序模板题。 我们把拓扑排序中的队列改为优先队列就可以使字典序最小 对于入度为0的点,我们加入优先队列 然后++cnt 如果n>cnt 说明存在环输出Impossible #pragma GCC optimize(3,"Ofast","inline") #include<bits/stdc++.h> #define io std::ios::sync_with_stdio(false),cin.tie(0),cout.tie(0) using namespace std; ..原创 2020-05-23 23:30:06 · 219 阅读 · 0 评论