#P15169. [SWERC 2022] Italian Data Centers

[SWERC 2022] Italian Data Centers

题目描述

An Italian data center consists of a set of servers, each colored green, white, or red, and a set of wires connecting them. Each wire connects two distinct servers and two servers are connected by at most one wire. Additionally, the data center is connected, i.e. there is a way to transmit information between any two servers through a sequence of wires.

To judge all of the contestant submissions, SWERC has an Italian data center. Since every year the number of contestants doubles, the data center needs to grow to adapt to the extra load. To address this, SWERC builds a new data center based on the previous year's one by following these steps:

  • For each server s s in the old data center, the new data center contains two servers s1 s_1 and s2 s_2 of the same color as s s . A wire is placed connecting the two servers s1 s_1 and s2 s_2 .
  • For each wire connecting servers s s and t t in the old data center: if s s and t t have the same color, then a wire is placed in the new data center connecting s1 s_1 and t1 t_1 and another wire connecting s2 s_2 and t2 t_2 ; otherwise, a wire is placed in the new data center connecting s1 s_1 and t2 t_2 and another one connecting s2 s_2 and t1 t_1 .

One can show that if the old data center is connected than the new data center is also connected.

You are given the Italian data center that SWERC currently has, which contains n n servers (indexed by 1,2,,n 1, \, 2, \, \dots, \, n ) and m m wires connecting them. The organization wants to know how good their data center will be after k k years, so you should determine the diameter of the data center SWERC will have in k k years. The diameter of the data center is the largest distance between any two servers, i.e. the shortest number of wires that have to be used to transmit something between the two servers.

输入格式

The first line contains three integers n n , m m and k k ( 2n100 2 \leq n \leq 100 , n1mn(n1)/2 n - 1 \leq m \leq n (n - 1) / 2 , 0k100 0 \leq k \leq 100 ) — the number of servers, the number of wires, and the number of years to consider.

The second line contains n n integers c1,c2,,cn c_1, \, c_2, \, \dots, \, c_n ( 1ci3 1 \leq c_i \leq 3 ) — ci c_i is the color of server i i (where 1 1 stands for green, 2 2 for white and 3 3 for red).

Each of the next m m lines contains two integers si s_i and ti t_i ( 1si,tin 1 \leq s_i, t_i \leq n ) — the two servers the i i -th wire connects.

It is guaranteed that the data center is connected, the endpoints of each wire are distinct, and that there are no repeated wires.

输出格式

Print the diameter of SWERC's data center after k k years.

3 3 0
1 2 3
1 2
2 3
3 1
1
3 3 1
1 2 3
1 2
2 3
3 1
2
3 3 2
1 2 1
1 2
2 3
3 1
3
8 14 100
3 3 2 2 1 2 2 1
2 7
1 5
7 8
4 6
2 8
1 8
2 6
6 7
1 6
1 4
3 5
1 3
4 5
5 7
53

提示

In the first sample, the Italian data center is the following:

:::align{center} :::

The distance between any pair of servers is 1 1 so the diameter is 1 1 .

In the second sample, the initial Italian data center is the one from the first sample.

After one year we obtain the following (where the numbers indicate which copy the server refers to):

:::align{center} :::

Consider the highlighted servers. The distance between them is 2 2 and there is no pair of servers with greater distance, so the diameter is 2 2 .

In the third sample, the data center after one year is the following:

:::align{center} :::

After one more year:

:::align{center} :::

Consider the highlighted servers. The distance between them is 3 3 and there is no pair of servers with greater distance, so the diameter is 3 3 .