MAX-elemendid | 프로그래밍의 벗 PivotOJ
PivotOJ

MAX-elemendid

시간 제한: 3000ms메모리 제한: 1024MB출처: EIO 2021-22 finalBOJ 29879

문제

Jukul on NN tipuga kahendpuu, mis ei pruugi olla tasakaalus. Puu tipud on nummerdatud 1N1 \ldots N ja puu juur on tipp number 11. Puu igasse lehte on kirjutatud üks arv. Juku saab igasse ülejäänud tippu paigutada omal valikul kas MIN- või MAX-elemendi. MIN-element kirjutab oma tipu väärtuseks selle alluvate väärtustest väiksema, MAX-element suurema. Juku tahab erinevate arvude kohta teada, mitu MAX-elementi on minimaalselt vaja selleks, et juurtipu väärtuseks kirjutataks antud arvuga võrdne või sellest suurem arv. Kirjuta programm, mis aitab Juku küsimustele vastata.

입력

Sisendi esimesel real on puu tippude arv NN (3N1053 \le N \le 10^5). Järgmisel N1N-1 real on igaühel kaks täisarvu AiA_i ja BiB_i (1Ai,BiN1 \le A_i, B_i \le N, AiBiA_i \ne B_i), mis tähendab et tippude AiA_i ja BiB_i vahel on serv.

Järgnevatel ridadel on igaühel kaks täisarvu XjX_j ja YjY_j (1XjN1 \le X_j \le N, 0Yj1070 \le Y_j \le 10^7), kus XjX_j on ühe lehttipu indeks ja YjY_j sinna kirjutatud väärtus. Selliseid ridu on samapalju kui puus lehti.

Järgmisel real on Juku küsimuste arv QQ (1Q51051 \le Q \le 5 \cdot 10^5). Järgmisel QQ real on igaühel üks täisarv MkM_k (0Mk1070 \le M_k \le 10^7), mille kohta Juku tahab teada minimaalset vajalikku MAX-elementide arvu.

출력

Juku iga küsimuse kohta väljastada üks rida. Kui Juku antud MkM_k või sellest suurema arvu saamine puu juurtippu on võimalik, väljastada minimaalne selleks vajalike MAX-elementide arv. Kui nii suurt arvu pole võimalik juurtippu saada, siis väljastada vastuseks 1-1. Vastused väljastada küsimuste sisendis olemise järjekorras.

예제

예제 1

입력
5
1 2
2 3
5 1
4 2
3 7
4 5
5 12
3
10
4
23
출력
1
0
-1
코드를 제출하려면 로그인하세요.