拓扑序
_Shmily
这个作者很懒,什么都没留下…
展开
-
牛客----Strange Bulbs (bitset优化拓扑序)
题目连接 题面: 题意: 给定一张有向无环图,初始时只有1处于开状态,每更改一个点的状态,那么他的可达点状态都取反。 问最少多少次能让所有点都处于关状态。 题解:很容易想到拓扑序,因为按照拓扑序前进,若当前到某一点,这一点还处于开状态那么一定要把他打到关状态上(要不然后续状态不管怎么操作一定不能把他打到关状态上,而他前面的点都处于关状态,操作他前面的点一定不如操作这一点更优。) 直接拓扑序不好处理,因为会有 1–>2–>4 , 1–>3–>4这种情况,实际上将1置于关状态后2,3,原创 2020-08-24 22:13:55 · 72 阅读 · 0 评论 -
Codeforces Round #292 (Div. 2) D. Drazil and Tiles (拓扑序)
题目链接 题面: 题意: 给出一个N×M 的网格,一些位置是障碍,其他位置是空地,求是否存在一个用 1×2的骨牌(可以转成 2×1)铺满空地的方案,以及方案是否唯一。 骨牌不能放到网格以外,不能重叠,不能覆盖在障碍物上。 N,M≤2000 题解: 如果一个空地的周围四联通部分只有一个空地,那么必定有一个骨牌要放在这两个空地上。同时,这一次放置可能会影响另一个空地的四联通部分的选择方案。 这就像一个拓扑排序。首先记录每一个点四联通的格子里空地的数量,将数量为1的放进队列里,然后逐个放置,check 周围是否原创 2020-08-24 22:08:46 · 81 阅读 · 0 评论 -
Codeforces Round #286 (Div. 2) D. Mr. Kitayuta Technology (拓扑序,并查集,思维)
题目链接 题面: 题意: 给定n个点和m条单向边,边有传递性,即 a->b,b->c 可实现 a->c, 问满足 输入的m条单向边的实现 , 最少需要多少条单向边。 即最少需要多少条单项边可以满足给定有向图中点的可到达关系。 弱连通图:有向图的基图联通。 基图:有向图的所有有向边全部替换成无向边所形成的图。 题解: 若有向图的某个弱连通分量没有环,那么通过拓扑序可用 x-1 条边把这 x 个点连接起来使之符合要求。 若有向图的某个弱连通分量有环,那么至少需要 x 条边(使这x个点形成一个原创 2020-08-24 22:02:44 · 91 阅读 · 0 评论