2-SAT
SAT是是适定性(Satisfiability)问题的简称。一般形式为 k - 适定性问题,简称 k-SAT。而当时该问题为 NP 完全的。
1|0定义
有 个布尔变量 ,另有 个需要满足的条件,每个条件的形式都是 「 为 true
/ false
或 为 true
/ false
」。比如 「 为真或 为假」、「 为假或 为假」。
注意这里的或为排斥或
2-SAT 问题的目标是给每个变量赋值使得所有条件得到满足。
2|0Tarjan SCC 缩点
把每个变量拆成两个点,和。比如现在有一个要求,则把到连一条边,把到连一条边。连出来的图是对称的,然后跑一遍 Tarjan,如果存在某个变量的两个点在同一个强连通分量中的情况,则无解,否则有解。
构造方案时,我们可以通过缩点后的拓扑序确定变量的值。如果变量的拓扑序在之后,则取为真,反之取为假。注意 Tarjan 求得的 SCC 的编号相同与反拓扑序。
__EOF__

本文作者:PHarr
本文链接:https://www.cnblogs.com/PHarr/p/17652900.html
关于博主:前OIer,SMUer
版权声明:CC BY-NC 4.0
声援博主:如果这篇文章对您有帮助,不妨给我点个赞
本文链接:https://www.cnblogs.com/PHarr/p/17652900.html
关于博主:前OIer,SMUer
版权声明:CC BY-NC 4.0
声援博主:如果这篇文章对您有帮助,不妨给我点个赞
标签:
算法笔记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律