差分约束好题

1、Magic Problem - 7176 (hdu.edu.cn)

思路:求的是区间总和,所以考虑和前缀和进行结合,将前缀和a[i](前i个数的前缀和)作为边权。然后考虑限制条件。

首先,区间[l,r]的总和小于b,那么可以得到a[r] - a[l - 1] ≤ b

其次,因为每个位置大于等于0,那么一定有a[i + 1] - a[i] ≥ 0

最后,每个塔有一个最低值pi,那么a[min(n, i + k - 1)] - a[max(0, i - k )] ≥ pi

2、THE MATRIX PROBLEM Problem - 3666 (hdu.edu.cn)

思路:难点在于对不等式的处理,可以将不等式两边同时取log,然后可以转换为关于a[i],b[j]的减法不等式关系,进而可以转换为最短路问题。

3、Intervals 1201 -- Intervals (poj.org)

题解:类似于例一,但是有一些细节需要小小注意一下。每个位置有最小值为0,最大值为1,加上题目本身的限制,共三个约束条件。

求的是前缀和,做差的时候,需要sum[ai] - sum[bi - 1],然后ai,bi最小可能为0,所以需要把读入的ai,bi都+1,然后再求区间内的和.还有一点就是,点数不是1到n,点数是min(ai),max(bi + 1)之间,所以初始点是min(ai),结束点是max(bi + 1).

posted @ 2023-02-05 10:16  风归去  阅读(26)  评论(0编辑  收藏  举报