随笔分类 -  图论之2-sat

摘要:当两个门锁相同时,这个钥匙必须用,不同时分开用 可以直接遍历门,当然二分更快 #include<map> #include<set> #include<cmath> #include<queue> #include<stack> #include<vector> #include<cstdio> # 阅读全文
posted @ 2017-08-10 09:44 walfy 阅读(138) 评论(0) 推荐(0)
摘要:这题就是找合取范式比较麻烦 AND 1 0必须取自己来造成矛盾,1必须取1 AND 0 1必须取0 OR 1 0必须取1 OR 0 1必须取自己来造成矛盾 XOR 1 0必须取1,1必须取0 XOR 0 1必须取1,0必须取0 然后就是tarjan扫一遍判断 #include<map> #inclu 阅读全文
posted @ 2017-08-09 09:34 walfy 阅读(178) 评论(0) 推荐(0)
摘要:tarjan缩点,拓扑排序染色输出(貌似挑战上面没有拓扑啊,而且这样写还过了= =) 主要是找s,t,d,三者之间的关系,找出合取范式这题就很容易了 #include<map> #include<set> #include<cmath> #include<queue> #include<stack> 阅读全文
posted @ 2017-08-08 16:32 walfy 阅读(164) 评论(0) 推荐(0)
摘要:tarjan扫一遍后直接判断 最关键的地方就是建边(x[i] <= x[j] && y[i] >= x[j] && y[i] <= y[j]) || (x[i] >= x[j] && x[i] <= y[j] && y[i] >= y[j]) 建边条件:x[ i ] < = x [ j ] < = 阅读全文
posted @ 2017-08-08 14:10 walfy 阅读(183) 评论(0) 推荐(0)