zoukankan      html  css  js  c++  java
  • 【图论】2-SAT

    2-SAT,表示为一系列约束 (x_i; or; x_j) 即两个变量中至少选择一个为真。

    那么,假如其中一个选择了假,另一个一定要选择为真。

    拆点,把变量 (x_i) 取真用点 (V_i) 表示,变量 (x_i) 取假用点 (V_{i+n}) 表示。那么上面的一个约束就连边:((V_{i+n},V_j)((V_{j+n},V_i) (假点向另一个真点连边)。然后对整个图进行强连通缩点,假如一个图的同一个变量处在同一个强连通分量,那么必定无解。否则得到一个DAG,DAG的出边表示,假如当前点选择,那么出边点必选(所以一个变量必须同时为真或者同时为假就是无解)。否则对于一个变量,选择其为真或者为假中,拓扑序较大的那一个就有解。

  • 相关阅读:
    DC综合流程
    DC set_tcl脚本配置
    同步FIFO设计
    顺序脉冲 发生器
    状态机的写法
    verilog串并转换
    indexOf()
    jQuery 效果
    jQuery 事件
    jQuery css
  • 原文地址:https://www.cnblogs.com/purinliang/p/14413800.html
Copyright © 2011-2022 走看看