#P12730. [KOI 2021 Round 2] 美食推荐
[KOI 2021 Round 2] 美食推荐
题目背景
试题来源:https://koi.or.kr/archives/。中文翻译做了少量本土化修改。
按照署名—非商业性使用—相同方式共享 4.0 协议国际版进行授权。
题目描述
KOI 国有 个城市。每个城市编号从 1 到 。
KOI 国的结构很特别,把城市看作图的顶点、道路看作无向边,则这个国家的结构可以表示为一个包含 个顶点的树。树是一个无环的连通图。
KOI 国共有 家美食餐厅,每家餐厅编号从 1 到 。某些城市可能没有餐厅,也可能有两个以上的餐厅,请特别注意这一点。
第 家餐厅()位于城市 ,配送范围为距离不超过 的城市,且其客户偏好度为 。
第 家餐厅可以向从城市 出发,经过至多 条道路所能到达的所有城市配送。即,第 家餐厅的配送范围为:
其中, 表示从城市 到城市 之间的最短路径长度(即需要经过的最少道路数)。
你是一名外卖推荐平台的运营者。为了避免服务重叠,你希望从 家餐厅中选出一个子集 ,满足以下条件:
- 对于任意城市 ,它不能同时被 中的两个或多个餐厅包含在其配送范围内。也就是说,对于 中任意不同的两家餐厅 和 ,都有 。
请从所有满足上述条件的子集 中,选出客户偏好度总和最大的一个,并输出该最大值。
输入格式
第一行包含两个整数 和 ,中间用一个空格分隔。
接下来的 行中,每行包含两个整数 和 ,表示城市 和城市 之间有一条道路相连。
接下来的 行中,每行包含三个整数 、 和 ,表示第 家餐厅所在城市、配送距离上限与客户偏好度。
输出格式
输出一个整数,表示满足条件的餐厅集合中客户偏好度之和的最大值。
8 5
1 2
2 3
3 4
4 5
5 6
4 7
4 8
3 2 40
6 0 5
8 0 5
2 1 16
5 1 32
53
提示
约束条件
- 所有输入数据均为整数。
- 对于所有 (),满足 ,
子任务
- (9 分)对于 ,城市 与城市 之间有一条道路相连。
- (11 分)
- (17 分)
- (10 分)
- (8 分)对于 ,城市 与城市 之间有一条道路相连。
- (12 分)图中度数大于等于 3 的顶点最多只有一个。
- (33 分)无额外约束条件。