QOJ.ac

QOJ

时间限制: 1 s 内存限制: 512 MB 总分: 100

#10253. 动漫商店

统计

有 $n$ 个城市和 $m$ 条道路。每条道路都是双向的,连接两个城市。已知有 $k$ 个城市设有动漫商店。

如果你住在一个城市,如果该城市有动漫商店,你当然很了解它。你想要找到距离你所在城市最近的、且不是你所在城市的动漫商店。

对于每个城市,求出到另一个设有动漫商店的城市的最短距离。

输入格式

第一行包含三个整数 $n$、$m$ 和 $k$:分别表示城市数量、道路数量和动漫商店数量。城市编号为 $1, 2, \dots, n$。

第二行包含 $k$ 个整数:设有动漫商店的城市编号。

最后 $m$ 行描述道路。每行包含两个整数 $a$ 和 $b$:表示城市 $a$ 和 $b$ 之间有一条道路。

输出格式

输出 $n$ 个整数:对于每个城市,输出到另一个设有动漫商店的城市的最短距离。如果不存在这样的城市,则输出 $-1$。

样例

输入 1

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

输出 1

1 1 1 1 -1 1 -1 2 -1

子任务 1 (23 分)

  • $1 \le k \le n \le 1000$
  • $0 \le m \le 2000$

子任务 2 (16 分)

  • $1 \le k \le n \le 10^5$
  • $m=n-1$
  • 每条道路连接城市 $i$ 和 $i+1$,其中 $i=1, 2, \dots, n-1$

子任务 3 (61 分)

  • $1 \le k \le n \le 10^5$
  • $0 \le m \le 2 \cdot 10^5$

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.