AT_joi2019ho_e.珍しい都市 (Unique Cities)
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
JOI 国有 N 个城市,编号为 1 到 N。这些城市通过 N−1 条道路相连。第 i 条道路(1≤i≤N−1)连接城市 Ai 和城市 Bi,且道路是双向通行的。任意两个城市之间都可以通过若干条道路互相到达。
JOI 国有若干种特产,每种特产用 1 到 M 的编号表示(可能存在某些编号未被使用)。每个城市生产一种特产,城市 j(1≤j≤N)生产编号为 Cj 的特产。多个城市可能生产同一种特产。
两个城市之间的距离定义为它们之间需要经过的最少道路数。
对于城市 x(1≤x≤N),如果城市 y(1≤y≤N,y=x)满足对于所有其他城市 z(1≤z≤N,z=x,z=y),城市 x 到城市 y 的距离与城市 x 到城市 z 的距离都不相同,则称城市 y 对于城市 x 来说是“珍稀城市”。
JOI 国的大臣 K 想知道,对于每个城市 j(1≤j≤N),从该城市出发,所有“珍稀城市”所生产的特产有多少种。
请你根据 JOI 国的道路信息和每个城市生产的特产编号,编写程序,计算每个城市从自身出发能看到的“珍稀城市”所生产的特产种类数。
输入格式
输入从标准输入读入,格式如下:
N M
A1 B1
⋮
AN−1 BN−1
C1 ⋯ CN
输出格式
输出共 N 行。第 j 行(1≤j≤N)输出从城市 j 出发能看到的“珍稀城市”所生产的特产种类数。
输入输出样例
输入#1
5 4 1 2 2 3 3 4 3 5 1 2 1 2 4
输出#1
2 0 1 1 1
输入#2
7 1 1 2 2 3 3 4 4 5 5 6 6 7 1 1 1 1 1 1 1
输出#2
1 1 1 0 1 1 1
输入#3
10 10 2 6 5 8 10 8 1 4 10 6 4 5 10 7 6 9 3 7 1 2 3 4 5 6 7 8 9 10
输出#3
4 3 4 2 0 2 2 0 3 2
输入#4
22 12 9 6 12 13 4 20 21 22 3 19 2 9 6 18 18 11 18 3 16 2 6 4 3 17 16 10 8 16 22 1 16 14 15 8 9 21 2 12 21 5 12 7 1 1 4 8 4 11 7 6 7 11 6 11 10 4 7 5 3 12 9 6 12 2
输出#4
2 0 1 1 1 1 1 0 0 1 2 0 1 1 2 0 2 1 2 3 0 0
说明/提示
限制条件
- 2≤N≤200000。
- 1≤M≤N。
- 1≤Ai≤N(1≤i≤N−1),1≤Bi≤N(1≤i≤N−1)。
- 对于所有 i,Ai 和 Bi 均为有效城市编号。
- 任意两个城市之间都可以通过若干条道路互相到达。
- 1≤Cj≤M(1≤j≤N)。
子任务
- (4 分)N≤2000。
- (32 分)M=1。
- (32 分)M=N,且 Cj=j(1≤j≤N)。
- (32 分)无额外限制。
样例说明 1
对于城市 1,珍稀城市为城市 2,3,它们生产的特产分别为 2,1,所以答案为 2 种。
对于城市 2,没有珍稀城市,所以答案为 0 种。
对于城市 3,珍稀城市为城市 1,它生产的特产为 1,所以答案为 1 种。
对于城市 4,珍稀城市为城市 1,3,它们都生产特产 1,所以答案为 1 种。
对于城市 5,珍稀城市为城市 1,3,它们都生产特产 1,所以答案为 1 种。
注意,编号为 3 的特产不存在。
样例说明 2
该输入满足子任务 2 的限制条件。
样例说明 3
该输入满足子任务 3 的限制条件。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?