Se dă un arbore cu noduri, numerotate de la la . Fiecare muchie din arbore are un cost număr natural nenul asociat. O operație constă în a alege o muchie cu costul strict pozitiv și a-i scădea costul cu .
Pentru un nod din arbore și un număr natural , se notează cu suma minimă a costurilor drumurilor de la nodul la restul nodurilor din arbore care se poate obține aplicând în mod optim cel mult operații de tipul descris anterior.
Cerință
Se dau interogări de forma , unde este un nod din arbore, iar și sunt numere naturale astfel încât . Pentru fiecare interogare să se calculeze , adică suma valorilor pentru , modulo .
Date de intrare
Prima linie a fişierului de intrare arbore.in
conţine numărul , reprezentând numărul de noduri din arbore.
Pe următoarele linii se află câte numere , reprezentând o muchie din arbore între nodurile și , care are costul .
Următoarea linie conține un singur număr , reprezentând numărul de interogări, iar pe următoarele linii se află câte trei numere , cu semnificația din enunț.
Date de ieșire
Fișierul de ieșire arbore.out
trebuie să conțină linii, fiecare coținând câte un număr natural care reprezintă răspunsul pentru fiecare interogare dată, în ordinea în care acestea sunt date în fișierul de intrare.
Restricții și precizări
# | Punctaj | Restricții |
---|---|---|
1 | 12 | |
2 | 7 | |
3 | 13 | |
4 | 16 | |
5 | 19 | |
6 | 14 | |
7 | 11 | |
8 | 8 | Fără restricții suplimentare. |
Exemple
arbore.in
5
1 2 3
2 3 4
2 5 6
1 4 2
4
1 4 5
2 1 1
5 20 22
4 0 0
arbore.out
21
16
0
27
Explicație
Arborele are noduri si este ilustrat în Figura 1 împreună cu costurile asociate muchiilor sale. Se dau interogări, după cum urmează.
- Prima interogare: Pentru se poate aplica operația descrisă în enunț muchiei de ori, respectiv muchiei o dată, deci . Pentru se poate aplica operația descrisă în enunț muchiei de ori, muchiei o dată, respectiv muchiei o dată, deci . Astfel, răspunsul este .
- A doua interogare: Se poate scădea costul muchiei o dată, deci răspunsul este .
- A treia interogare: Se obervă că pentru oricare , costurile tuturor muchiile din arbore pot fi scăzute până ajung la valoarea (mai mult de atât nu este permis din definiția operației date), deci rezultatul este .
- A patra interogare: , deci nu avem la dispoziție nicio operație care să scadă costul muchiilor. Astfel, răspunsul este dat de suma costurilor drumurilor de la nodul la restul nodurilor din arbore, care este .