QOJ.ac

QOJ

Time Limit: 1.0 s Memory Limit: 256 MB Total points: 100 Hackable ✓

#15405. Maximum Distance To Port

統計

有 $n$ 座城市,编号从 1 到 $n$,由 $m$ 条双向道路连接,每条道路长度均为 1 公里。道路网络构成一个连通的简单图。

每座城市生产 $k$ 种农产品中的恰好一种,产品编号从 1 到 $k$。城市 1 是所有产品必须运往的主要港口。

政府希望评估出口农产品的最坏情况运输成本和时间。为此,他们需要针对每种产品类型,确定该产品的所有产地城市到港口城市的最短距离(以公里为单位)中的最大值。

你的任务是计算每种产品类型的这一最大最短距离。

图 1:样例 2 的示意图。

输入格式

第一行包含三个整数 $n$、$m$ 和 $k$,分别表示城市数量、双向道路数量和产品类型数量。

第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$,其中 $a_i$ 是城市 $i$ 生产的产品类型。

接下来的 $m$ 行中,第 $i$ 行包含两个整数 $u_i$ 和 $v_i$,表示第 $i$ 条双向道路连接城市 $u_i$ 和 $v_i$。

  • $1 \le n \le 2 \times 10^5$
  • $0 \le m \le 2 \times 10^5$
  • $1 \le k \le n$
  • $1 \le a_i \le k$
  • $1 \le u_i, v_i \le n$
  • 图是连通且简单的(没有自环或重边)。
  • 从 1 到 $k$ 的每种产品类型至少由一座城市生产。

输出格式

在一行中输出 $k$ 个整数。第 $i$ 个整数应为生产产品 $i$ 的所有城市到港口城市 1 的最大最短距离(以公里为单位)。

样例

输入 1

3 3 2
2 1 1
1 2
3 1
3 2

输出 1

1 0

输入 2

8 10 5
5 1 1 2 4 4 2 3
8 2
4 6
6 2
5 2
2 7
8 6
1 2
7 6
3 1
1 5

输出 2

1 3 2 2 0

说明

样例 2 的解释:图 1 展示了这个样例。在此样例中,港口是蓝色节点。所有产品类型 5 的货物已经在港口,因此它们的运输成本为 0。产品类型 4 的运输成本较高。其中一个生产产品类型 4 的城市到港口的距离为 1,而另一个距离为 2。因此,该产品的运输成本为 2。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.