某场比赛 最大化 发表于 2020-11-17 分类于 OI & ACM 阅读次数: 本文字数: 225 阅读时长 ≈ 1 分钟 题目描述有一张 $n$ 个点的无向图,要求给每一个点分配一个标号,使得任意一条边两端的点的标号差的绝对值不能超过给出的常数 $D$,要求在此基础上最大化标号的最大值与最小值的差 $n\le 1000$ Solution答案为两两间最短路的最大值 证明: 注意到以某个点为起点进行 $bfs$ 的时候,我们可以按照深度 $k$ 分配标号为 $kD$ 原因很简单,因为无向图的 $bfs$ 树只会出现到兄弟的边,而兄弟之间的标号是相等的 然后我们发现 $bfs$ 求出的每个点的深度就是最短路