zoukankan      html  css  js  c++  java
  • 4-18整理

    2-sat问题:
    设x1~xn为bool,给定m个逻辑表达式(形式为xi <逻辑运算> x2 = 值),求x1~xn的一组解,使得所有逻辑表达式成立:
    做法:建立2n个点,分别表示点n的true点和false点。连一条边,当且仅当根据一个逻辑表达式能绝对确定xi=true(or false)时xj的取值,在xi的true/false和xj对应值的点中间连一条边,由xi到xj。
    若一个点的值为np,则连一条-np->np的边。
    若xi=p沿某一条路推导出xi=-p,则无解。
    ->若有的点的true和false解在一个强连通分量里,则无解。
    无向图里的桥:删掉一条边使整个图不连通
    割点:删掉一个点使整个图不连通
    边双联通分量:找到一个子图,没有桥
    点双联通分量:找到一个子图,没有割点
    每一个桥都会连接两个边双联通分量
    每个边只可能在一个双联通分量里,每个点有可能在多个双联通分量里。
    匈牙利算法(二分图匹配问题):
    当一个左边点p想与右边点q匹配,如果q已经被匹配,则尝试让p原来匹配的左边点r寻找一个新匹配点。如果r找到s1:{r->s,p->q},否则q会拒绝p的匹配请求。

    最大独立集:选出最多的点,使每两个点之间都没有直接连接的边。
    最大团:在图中选出一个最大完全子图。
    一个图的最大团等于这个图的补图的最大独立集。(补图:有边的变成没边,没边的变成有边)

  • 相关阅读:
    exkmp
    欧拉通路、回路
    你有多久没有看过星星
    trie树模板(统计难题)
    SPFA(热浪)
    codevs1958 刺激
    洛谷1290 欧几里得的游戏
    洛谷1016 旅行家的预算
    Spfa算法模板
    Tyvj2017清北冬令营入学测试
  • 原文地址:https://www.cnblogs.com/jiangyuechen/p/12725969.html
Copyright © 2011-2022 走看看