zoukankan      html  css  js  c++  java
  • 12.20 差分约束学习笔记


    先来看一组不等式:
    X1 - X2 <= 0
     X1 - X5 <= -1
    X2 - X5 <= 1
    X3 - X1 <= 5 
    X4 - X1 <= 4
     X4 - X3 <= -1
     X5 - X3 <= -3
     X5 - X4 <= -3
    在不等式组(1)中,每个不等式都是两个未知数的差小于等于某个常数(大于等于也可以,因
    为左右乘以-1 就可以化成小于等于)。这样的不等式组就称作 差分约束系统(system of difference
    constraints)。
    这个不等式组要么无解,要么就有无数组解。因为如果有一组解{ X1, X2, ..., Xn }的话,那么
    对于任何一个常数 k,{ X1 + k, X2 + k, ..., Xn + k }肯定也是一组解,因为任何两个数同时加一个
    数之后,它们的差是不变的,那么这个差分约束系统中的所有不等式都不会被破坏。

    我们已经知道对于这些不等式要么无解,要么有无数组解,我们通过构造,把他们转化成不等式之后(注意转化的时候最好全部转化成小于或者大于,这样比较好处理),构造一张图,然后再图上跑一遍最短路,

    若是从原点到终点没有最短路或者有一个负环,那么这就是无解的情况,否则就有解。。。

    附:有关图论的一本书(PDF)提取密码:w4xp

    备注:资源来自网络

  • 相关阅读:
    JavaScript对象
    JavaScript基础
    MySQL总结
    前端的基础知识汇总
    反射,面对对象高阶
    django中的认证登陆与用户的创建
    django的cookie和session
    ajax的json包含于xml的区别
    django的分页系统
    django的orm简签
  • 原文地址:https://www.cnblogs.com/suishiguang/p/6204335.html
Copyright © 2011-2022 走看看