图论-2-SAT
Endless_Way
这个作者很懒,什么都没留下…
展开
-
HDU 1814 Peaceful Commission
2-SAT。假设a,a’一组,b,b’一组,那么如果a和b矛盾,选a就肯定要选b’,于是连一条边a->b’,同理有连边b->a’然后暴力找答案,dfs(i)的返回值表示选i是否引起矛盾因为这些对应关系是组与组之间的,所以假设当前选i不矛盾,那么接下来的其他没决策过的点的决策与i无关,即i决策不会改变(否则考虑i的时候就会被考虑)数组大小很迷 开大点总是好的#include<cstdio> #incl原创 2016-08-15 16:50:32 · 306 阅读 · 0 评论 -
POJ 3648 Wedding
2-SAT关于了解2-SAT,推荐两个地方:《由对称性解2-SAT问题》、【研究总结】2-sat问题每次找到一个未被确定的Si,使得不存在Si Si’,选择Si及其后代节点而删除Si’及Si‘的前代节点。一定可以构造出一组可行解。一个重要的性质是不管怎么加限制,对于任意一对Si, Si’ , Si的后代节点与Si’ 的前代节点相互对称总成立。一类奇怪的加边是形如Si->Si’的,这条边保证了逆拓扑序原创 2017-04-03 23:20:52 · 265 阅读 · 0 评论 -
UOJ 210 [UER #6]寻找罪犯
2-SAT首先2-SAT的tarjan做适用于一类如果A->B,则一定有B’->A’的对称的图。一个强联通分量里的所有点,要么一起选要么一起不选,那就缩起来。一个重要的结论是如果一个强联通分量里同时有A和A’,则此图无解,否则一定有解。无解的情况显然正确。有解的情况考虑构造。每次随便从点集里抓一个点A出来,选中A的所有可达点,删去所有可达A’的点。显然这是可以做到的。那这样会不会把图弄成无解?考虑如原创 2017-04-27 23:21:18 · 655 阅读 · 0 评论