摘要: 传送门 解题思路 求2-sat合法的方案数。 做法: 先基操判断有无解,并求出一组解。 然后考虑两个集合的人能否过去。 我们发现只有三种情况:A到B一个人,B到A一个人,AB交换一个人。 所以就 \(O(N^2)\) 判断AB集合中的人是否符合条件,最后方案数即为(A到B符合的人数+1)*(B到A符 阅读全文
posted @ 2021-10-19 18:54 尹昱钦 阅读(475) 评论(0) 推荐(1) 编辑
摘要: 传送门 解题思路 和板子几乎一样。 而且不用输出方案。 AC代码 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include<vector> #include<q 阅读全文
posted @ 2021-10-19 14:38 尹昱钦 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 传送门 解题思路 思想:将问题转化为图论问题。 因为一个点只有两个状态,所以每个点可以拆成 i 和 i+n 两个点,u 连向 v 表示选择 u 就必须选择 v。 根据条件建图(注意一定要建对应的反向边(例如建立 u->v+n,就必须再连 v->u+n))后,跑一遍Tarjan求强连通分量。若发现存在 阅读全文
posted @ 2021-10-19 13:03 尹昱钦 阅读(40) 评论(0) 推荐(0) 编辑