- Time limit: 1.00 s
- Memory limit: 128 MB
Annettuna on puu, jossa on n solmua. Jokaisella solmulla on tietty arvo. Tehtäväsi on vastata joukkoon kyselyitä, jossa annetaan kaksi solmua a ja b ja sinun tulee ilmoittaa pienin ja suurin arvo polulla näiden solmujen välillä.
Syöte
Syötteen ensimmäisellä rivillä on kaksi kokonaislukua n ja q: solmujen määrä ja kyselyiden määrä. Solmut on numeroitu 1,2,\ldots,n.
Seuraavalla rivillä on n kokonaislukua x_1,x_2,\ldots,x_n: solmujen arvot.
Seuraavaksi syötteessä on n-1 riviä, jotka kuvaavat puun. Jokaisella rivillä on kaksi lukua a ja b. Tämä tarkoittaa, että solmujen a ja b välillä on kaari.
Lopuksi syötteessä on q riviä, jotka kuvaavat kyselyt. Jokaisella rivillä on kaksi solmua a ja b.
Tuloste
Ilmoita jokaisesta kyselystä pienin ja suurin arvo polulla omalla rivillään.
Rajat
- 1 \le n,q \le 10^5
- 1 \le x_i \le 10^9
- 1 \le a,b \le n
Esimerkki
Syöte:
5 3 4 8 1 5 4 1 2 1 3 3 4 3 5 2 5 4 5 1 1
Tuloste:
1 8 1 5 4 4