关于2-sat的一点心得

文章介绍了如何根据逻辑真值来推导关系,并提出了四种不同的模型:至多取一个、至少取一个、取0个或2个、恰取一个,以及一个必取的条件。每个模型通过建立特定的连接关系来解决问题,关键在于确保强连通分量的正确构建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

思路来源

https://www.cnblogs.com/little-w/p/3585636.html?utm_source=tuicool

心得

用离散的蕴涵定义,把所有关系式a->b都推成¬a∨ b,

现在反其道而行之,根据逻辑真值,倒推边的关系,

n个条件,每个条件分为真、假两个点,称a为真,a’为假

可以将a->b理解为:

①若取了a,则一定要取b

②b是真值,也就是某种情况下,一定要成立的条件

若最后建的图,所有的a和a'均不在同一个强连通分量里,则原问题有解

模型总结(转载)

转载自https://www.cnblogs.com/little-w/p/3585636.html?utm_source=tuicool

模型一:两者(A,B)不能同时取(但可以两个都不选),即(A,B)至多取一个

说明:A 为假或 B 为假,选择了 A 就只能选择 B’,选择了 B 就只能选择 A’

连边 A→B’,B→A’

模型二:两者(A,B)不能同时不取(但可以两个都选),即(A,B)至少取一个

说明:A 为真或 B 为真,那么选择了 A’就只能选择 B,选择了 B’就只能选择 A

连边 A’→B,B’→A

模型三:两者(A,B)要么都取,要么都不取,即(A,B)取0个或取2个

说明:

选择了 A,就只能选择 B,选择了 B 就只能选择 A,

选择了 A’,就只能选择 B’,选择了 B’就只能选择 A’

连边 A→B,B→A,A’→B’,B’→A

模型四:两者(A,B)两个必须不相同,即要么选A,要么选B,即(A,B)恰取一个

说明:

选择了A,就不选择B;没选B,就一定要选A

选择了B,就不选A,没选A,就一定要选B

连边A’--->B B’--->A A-->B’ B-->A

模型五:两者(A,A’)必取A

连边 A’→A,根据蕴含定义,显然成立

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小衣同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值