Hide

Problem G
Ceļi

Languages de en et is ja lt lv no pl ru sv

Grafs ir matemātisks objekts, kas sastāv no virsotnēm un šķautnēm, kas katra savieno divas virsotnes. Piemērs grafam ar $4$ virsotnēm un $3$ šķautnēm ir parādīts zemāk.

Ceļš tiek definēts kā secīga virkne no $2$ vai vairāk virsotnēm, tāda, ka starp blakus virsotnēm virknē pastāv šķautne. Šajā uzdevumā mūs interesē tikai vienkāršie ceļi, kuros neviena virsotne neparādās vairāk kā vienu reizi. Ievērojiet, ka secība ir svarīga; piemēram, “5-6-7”, “5-7-6” un “7-6-5” tiek visi uzskatīti par dažādiem ceļiem.

Šajā uzdevumā katra grafa virsotne ir vienā no $K$ krāsām. Uzdevums ir atrast (vienkāršo) ceļu skaitu, kas nesatur virsotnes vienādās krāsās.

Ievaddati

Pirmā ievada rinda satur trīs veselus skaitļus: $N$ (virsotņu skaits), $M$ (šķautņu skaits) un $K$ (dažādu krāsu skaits).

Otrā ievada rinda satur $N$ skaitļus starp $1$ un $K$ — katras virsotnes krāsu (sākot ar virsotni $1$ un beidzot ar virsotni $N$).

Katra no sekojošajām $M$ rindām apraksta šķautni un satur divus veselus skaitļus $a, b$ ($1 \le a, b \le N, a \neq b$) — divas virsotnes, kuras savieno šķautne. Starp katrām divām virsotnēm būs ne vairāk kā viena šķautne.

Izvaddati

Izvadiet vienu veselu skaitli — ceļu skaitu, kuros visas virsotnes ir dažādās krāsās. Šis skaitlis vienmēr būs mazāks par $10^{18}$.

Ierobežojumi

Jūsu risinājums tiks testēts uz vairākām testu grupām, par katru no tām var iegūt punktus. Katra testu grupa satur vienu vai vairākus testus. Lai iegūtu punktus par testu grupu, jums ir pareizi jāatrisina visi testi šajā grupā. Jūsu beigu vērtējums par uzdevumu būs starp visiem iesūtījumiem lielākais.

Grupa

Punkti

Ierobežojumi

1

23

$1 \le N, M \le 100, 1 \le K \le 4$

2

20

$1 \le N, M \le 300\, 000, 1 \le K \le 3$

3

27

$1 \le N, M \le 300\, 000, 1 \le K \le 4$

4

30

$1 \le N, M \le 100\, 000, 1 \le K \le 5$

1. parauga paskaidrojums

\includegraphics[width=5cm]{pathsfig.pdf}

Attēlā parādīts pirmā piemēra grafs, kur katra virsotne ir iezīmēta balta (krāsa 1), pelēka (krāsa 2) vai melna (krāsa 3). Pastāv 10 ceļi, kuros visas virsotnes ir dažādās krāsās: “1-2”, “2-1”, “2-3”, “3-2”, “2-4”, “4-2”, “1-2-4”, “4-2-1”, “3-2-4” un “4-2-3”.

Ievērojiet, ka “1” neskaitās kā ceļš, jo tā ir viena virsotne, kā arī neskaitās “1-2-3”, jo tas satur divas virsotnes krāsā $1$.

Ievaddatu paraugs 1 Izvaddatu paraugs 1
4 3 3
1 2 1 3
1 2
2 3
4 2
10
Ievaddatu paraugs 2 Izvaddatu paraugs 2
9 11 4
1 2 3 4 1 2 1 2 2
1 2
1 3
2 3
2 4
3 6
6 2
6 5
4 3
4 5
7 8
9 8
70