HBC20261[SCOI2008]城堡CASTLE题解

坐在坟头思考人生 算法基础篇 40 0
题库丰富多样,涵盖各个领域,全网最全C++题库,让您在练习中不断成长!
在一个国家里,有n个城市(编号为0 到n-1),这些城市之间有n条双向道路相连(编号为0 到n-1),其中编号为i的道路连接了城市i和城市ri(一条道 路可以连接一个城市和它自身),长度为di, n 个城市中有m个拥有自己城堡, 可以抵御敌人侵略,如果没有城堡的城市遭受攻击,则离它最近的城堡将派兵前往救援, 你的任务是在不超过k个没有城堡的城市中建立城堡,使得所有城市中“离最近城堡

在一个国家里,有n个城市(编号为0 到n-1)。这些城市之间有n条双向道路相连(编号为0 到n-1),其中编号为i的道路连接了城市i和城市ri(一条道 路可以连接一个城市和它自身),长度为di。 n 个城市中有m个拥有自己城堡, 可以抵御敌人侵略。如果没有城堡的城市遭受攻击,则离它最近的城堡将派兵前往救援。 你的任务是在不超过k个没有城堡的城市中建立城堡,使得所有城市中“离最近城堡的距离”的最大值尽量小。换句话说,若令dist(c)表示城市c的最近城堡离它的距离,则你的任务是让max{dist(c)}尽量小。  输入数据保证存在方案使得对于每个城市,至少有一个城堡能够到达。

HBC20261[SCOI2008]城堡CASTLE题解
-第1张图片-东莞河马信息技术
(图片来源网络,侵删)
想要在职场中立于不败之地?那就来试试全网最全C++题库,让您在练习中快速提升技能。

标签: HBC20261[SCOI2008]城堡CASTLE题解