[2-SAT]【学习笔记】【未完】
這種一看就很2的東西....
?
參考資料:
??由對稱性解2-sat問題
? 2-sat解法淺析
?
$SAT$理論:??
$2-SAT$
兩種形式:
$x \in \hat B$
$x \lor y(x,\ y \in B)$
對于第二種形式,$x \lor y\ =\ \neg(\neg x \land \neg y)$
增加有向邊$(\neg x,y)\quad (\neg y,x)$
顯然一個強連通分量中的點會被同時選擇或不選
因此$b_i$和$\neg b_i$不能在同一個$SCC$中,我們通過求$SCC$就可以判斷可行性了
?
由上可知這個圖是對稱的,表現:
$1.\quad$原圖具有對稱傳遞性 $x \rightarrow y$則$\neg y \rightarrow \neg x$
感覺好像逆否命題
$2.\quad SCC$對稱
$3.\quad x$的后代對稱于$\neg x$的前代
?
如何構造一組解?
$1.$求$SCC$,縮點邊反向
$2.$記錄每個原圖的點$x$的$\neg x$,可以發現一個$SCC$只會有一個否定,因為圖是對稱的,$SCC$中所有點的否定的$SCC$是相同的
$3.$拓撲排序
$4.$選第一個未染色的點(這里指$SCC$),染白色,然后將否定點及其后代染黑色
$5.$重復上述過程直到染色完成
最后所有白色的點就是一組解
總體復雜度$O(n)$?
?
$Naive$做法
求$SCC$的做法復雜度很優秀,但只能判斷可行性和構造一組解
對于一些題目不能很好的處理
而$naive$做法就是選擇一個沒有賦值的變量,賦值為真,然后$dfs$下去,看看是否會沖突(一個點和否定點都為真)
這樣就非常靈活了,因為選擇一個變量的值的權力掌握在我們手上
復雜度最壞可能變為$O(nm)$
?
?
轉載于:https://www.cnblogs.com/candy99/p/6427062.html
總結
以上是生活随笔為你收集整理的[2-SAT]【学习笔记】【未完】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hp服务器安装exsi5.5
- 下一篇: MFC连接MySQL C API方法