子图划分 无解条件 如果S到T在图中有一条长为L的最短路,那么显然答案不会超过L:如果答案大于L,那么根据抽屉原理,必定至少有一个集合中没有这条路上的任意一条边。那么显然删去这个集合,S到T仍然连通:至少这条最短路没有被破坏。所以与题目要求不符,导致矛盾。 构造K=L的方案 如果S到T的最短路是L,则构造方法如下: 首先求出S到任意一点u的最短路D(u)。这样对图上的任意一条边e=uv,如果D(v)-D(u) =1,且D(v)≤L,就将这条边加入集合SD(v)中。这样就构造出来一种分组方案。 为什么? 证明 [引理]如果图上的任意一条边e=uv,D(v)–D(u) = 1且D(v)=i?e∈Si。那么从图上将Si中的所有边删去,对原图上任意D(p)≥i的点p,在新图上S到p均无通路。 [证明]如果D(p)≥i,就说明任意一条从S到p的路径中至少包括[D(p) + 1]个点:S, p1, p2, … , p,顺序写出S到每一个点最短路的长度: D(S), D(p1), D(p2), … , D(p) (1) 这个数列(1)一定以0开头,最后结尾是D(p) ≥ i,而根据最短路的性质,数列(1)中相邻两项差的绝对值一定不超过1,所以在这个数列中一定会出现相邻的两个数i-1,i。而显然对应的边在新图中被删去了,因此在新图中无法找到这条路径。 于是,从图中删去Si的所有边,就可以保

文档评论(0)

1亿VIP精品文档

相关文档