CSES - Eri arvot
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Sinulle annetaan juurellinen puu, jonka jokaisessa solmussa on tietty arvo. Tehtäväsi on laskea jokaiseen solmuun, montako eri arvoa solmun alipuussa on.

Syöte

Syötteen ensimmäisellä rivillä on kokonaisluku n: solmujen määrä. Solmut on numeroitu 1,2,\dots,n, ja solmu 1 on puun juuri.

Seuraavalla rivillä on n kokonaislukua x_1,x_2,\dots,x_n: kunkin solmun arvo.

Sitten syötteessä on n-1 riviä, jotka kuvaavat puun rakenteen. Jokaisella rivillä on kaksi kokonaislukua a ja b: solmujen a ja b välillä on kaari.

Tuloste

Tulosta n kokonaislukua: vastaus jokaiselle solmulle.

Rajat

  • 1 \le n \le 2 \cdot 10^5
  • 1 \le a, b \le n
  • 1 \le x_i \le 10^9

Esimerkki

Syöte:

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

Tuloste:

3 1 3 1 1