#P14350. [JOISC 2019] 合并 / Mergers

    ID: 16121 远端评测题 3000ms 256MiB 尝试: 0 已通过: 0 显示难度提高 上传者: 标签>2019双连通分量JOISC/JOIST(日本)

[JOISC 2019] 合并 / Mergers

题目描述

JOI 国有 NN 个城市,编号从 11 到 NN,以及 N−1N-1 条高速公路,编号从 11 到 N−1N-1。第 ii 条高速公路(1≤i≤N−11 \le i \le N-1)双向连接城市 AiA_i 与城市 BiB_i。人们可以通过高速公路在任意两个城市之间通行。

目前,JOI 国由 KK 个州组成,编号从 11 到 KK。城市 jj(1≤j≤N1 \le j \le N)属于州 SjS_j。每个州至少包含一个城市。

JOI 国总统 Mr. K 担心国家分裂。若能将所有城市划分为 Group X 与 Group Y,且满足以下条件,则称 JOI 国是 可分的:

  • 任意城市属于 Group X 或 Group Y 之一。
  • Group X 至少包含一个城市。
  • Group Y 至少包含一个城市。
  • 对于任意一个州,该州内所有城市必须属于同一个组。
  • 仅通过 Group X 内的城市,可以在 Group X 内的任意两个城市之间通行。
  • 仅通过 Group Y 内的城市,可以在 Group Y 内的任意两个城市之间通行。

Mr. K 计划通过合并州来使 JOI 国不可分。当他合并州时,他选择两个州并将它们合并为一个州;合并后的州包含这两个州的所有城市。Mr. K 希望通过尽可能少的合并次数,使 JOI 国变得不可分。

请注意,若 JOI 国仅剩一个州,则该国不可分。

请编写一个程序,给定城市、高速公路和州的信息,计算使 JOI 国不可分所需的最少合并次数。

输入格式

从标准输入读取以下数据。输入中的所有值均为整数。

NN KK

A1A_1 B1B_1

⋮\vdots

AN−1A_{N-1} BN−1B_{N-1}

S1S_1

⋮\vdots

SNS_N

输出格式

向标准输出写入一个整数,表示使 JOI 国不可分所需的最少合并次数。

5 4
1 2
2 3
3 4
3 5
1
2
1
3
4
1
5 4
1 2
2 3
3 4
4 5
1
2
3
4
1
0
2 2
1 2
1
2
1

提示

限制条件

  • 1≤N≤500 0001 \le N \le 500\,000。
  • 1≤K≤N1 \le K \le N。
  • 1≤Ai≤N1 \le A_i \le N(1≤i≤N−11 \le i \le N-1)。
  • 1≤Bi≤N1 \le B_i \le N(1≤i≤N−11 \le i \le N-1)。
  • 任意两个城市之间均可通过高速公路通行。
  • 1≤Sj≤K1 \le S_j \le K(1≤j≤N1 \le j \le N)。
  • 对于任意 kk(1≤k≤K1 \le k \le K),存在某个 jj(1≤j≤N1 \le j \le N)使得 Sj=kS_j = k。

子任务

  1. (10 分)N≤100N \le 100,K≤7K \le 7。
  2. (24 分)N≤3 000N \le 3\,000。
  3. (14 分)N≤100 000N \le 100\,000,K≤50K \le 50。
  4. (22 分)N≤100 000N \le 100\,000。初始状态下,同一州内的任意两个城市之间最多可通过 100 条高速公路通行。
  5. (30 分)无额外限制。

翻译由 Qwen3-235B 完成