
差分约束系统
ITCharge
高效率编程,慢节奏生活。
展开
-
POJ1201 HDU1384 Intervals【SPFA】【差分约束】
题目大意:给你N个整数点构成的区间[ai,bi](ai,bi都为整数),在区间[ai,bi]上最少选ci个点。 ci可在区间[ai,bi]中随意取,但是不能重复。问:要满足在N个区间取点,至少要选多少个点。 思路:差分约束思想。设Si为前i项的整数个数,则S(bi) - S(ai-1) >= ci。还有两个隐含约束条件 S(i-1) - S(i) <= 0,S(i)-S(i-1) <= 1。把这三种约束构建一个差分约束系统,用SPFA求最短路径。原创 2015-01-26 23:52:33 · 1062 阅读 · 0 评论 -
POJ3169 Layout【SPFA】【差分约束】
题目大意:奶牛喜欢站成一排吃饲料,有的奶牛喜欢靠在一起,他们最多距离D米远。 有的奶牛不喜欢靠在一起,他们最少距离D米远才可以。给你一系列的约束条件,问: 如果在上述条件下,奶牛站不成一排,则输出"-1",如果能站成一排,但是第1头牛~ 第N头牛的距离无限远,则输出"-2",如果满足条件,并且第1头牛~第N头牛之间存在 实际距离,则输出第1头牛~到第N头牛之间的能达到的最远距离。 思路:直接的差分约束系统,设牛u和牛v的位置为u和v。 第1条:设牛u和牛v最多距离w米远,转换为:v - u <= w。 第2原创 2015-01-27 22:54:59 · 1070 阅读 · 0 评论 -
POJ1364 HDU1531 King【SPFA】【差分约束】
题目大意:一个国王通过一个序列来做决定,他有几段段连续子序列的和的条件,知道 各段子序列的和是大于还有小于某个数(这个数已知)。问:是否能找到这样的序列。 转换一下,就是N个数组成一个序列,已知M段几个连续的数组成的子序列构成的不等 式,求这几个不等式构成的不等式组是否有解。 例如:序列{A1,A2,A3,A4,A5,…,An},有M个不等式,比如说: Ai + A(i+1) + A(i+2) + A(i+3) + A(i+4) + … + A(i+t) < Ki 或者是 Ai + A(i+1) + A(i原创 2015-01-26 21:56:46 · 1068 阅读 · 0 评论 -
HDU1534 Schedule Problem【SPFA】【差分约束】
题目大意:安排N个工作 ,给你N个工作的开始时间,共有4种安排方式(约束条件)。 条件1:FAF a b,a要在b完成后完成。 条件2:FAS a b,a在在b开始前完成。 条件3:SAS a b,a要在b开始前开始。 条件4:SAF a b,a要在b结束前开始。 给你一系列的约束条件。问:使其工作时间最小且满足所有约束条件的各个工作最早 时间各是什么。如果不满足条件则输出"impossible"。 思路:差分约束系统。设第i件工作的开始时间为t[i]。4个约束条件变成: 条件1:FAF Sa + t[a原创 2015-01-27 14:27:02 · 1454 阅读 · 0 评论 -
HDU3440 House Man【SPFA】【差分约束】
题目大意:在一条直线上有N个房子,每个房子的高度不一样,一个超人可以将这N个房子 左右移动,但是不能改变房子的相对位置。位置都为整数点。同一位置不能有两个以上的房 子两个超人从最矮的房子开始,跳到刚好比他所在房子高的房子上去,一直这样跳,每次跳 到的房子都比现在所在的房子高,而且每次跳的水平距离不能超过D米。问:如何将这些房 子进行合理的摆放(不改变相对位置的前提下),使得超人能够经过所有的房子跳到最高的房 子,又要使最矮的房子和最高的房子之间的距离最远? 输入说明: 第一行:先输入一个T,表示T组数据。原创 2015-01-27 20:23:50 · 1213 阅读 · 0 评论 -
差分约束系统【模板】
差分约束系统:如果一个系统由n个变量和m个约束条件组成,其中每个约束条件形如 xj - xi 例如如下的约束条件: X1 - X2 X2 - X5 X4 - X1 X5 - X3 全都是两个未知数的差小于等于某个常数(大于等于也可以,因为左右乘以-1就可以化成小于等于)。这样的不等式组就称作差分约束系统。 差分约束系统求解过程: 1.新建一个图,N个变量看作N个顶点,M个约束条件作为原创 2015-05-05 11:45:00 · 2011 阅读 · 0 评论