Comisarul Roman se află în fața unui dispozitiv exploziv constând dintr-o piramidă cu nivele numerotate de la la . Fiecare nivel conține bombe numerotate de la la . Notăm bomba de pe nivelul cu . Pentru fiecare bombă se cunoaște timpul în secunde de la momentul inițial după care aceasta explodează. Roman trebuie să dezamorseze dispozitivul după următoarele reguli:
- Dezamorsarea unei bombe durează o secundă
- Pentru a dezamorsa bombă trebuie întâi dezamorsate cele două bombe peste care aceasta este așezată, adică și . Bombele de pe nivelul nu au bombe dedesubt și deci nu se supun acestei reguli.
Dispozitivul se consideră dezamorsat odată ce toate bombele au fost dezamorsate. Roman nu vrea să se grăbească, așa că ar vrea să știe care este numărul maxim de secunde astfel încât, dacă ar începe operațiunea de dezamorsare cu o întârziere inițială de secunde, dispozitivul ar putea fi încă dezamorsat cu succes. Cu alte cuvinte, se cere cel mai mare număr astfel încât dezamorsarea ar fi posibilă dacă am înlocui numerele cu pentru . Este posibil și ca să fie negativ dacă Roman a ajuns prea târziu la dispozitiv. De exemplu, dacă dezamorsarea nu este posibilă în condițiile date dar ar fi fost posibilă dacă s-ar fi ajuns la fața locului cu o secundă mai devreme, atunci . Dacă nici cu o secundă mai devreme nu s-ar fi putut, dar s-ar fi putut cu două secunde mai devreme, atunci , și așa mai departe.
Cerință
Pentru teste, date fiind și valorile pentru , se cere numărul .
Date de intrare
Prima linie a fişierului de intrare detonator.in
conţine , reprezentând numărul de teste. Urmează descrierea celor teste, fiecare test fiind descris după cum urmează. Prima linie conține numărul întreg . Următoarele linii, numerotate în cadrul testului de la la , conțin numere întregi astfel încât al -lea număr de pe linia este . Observați că linia conține numere.
Date de ieșire
Fișierul de ieșire detonator.out
trebuie să conțină linii, reprezentând numărul pentru fiecare test dat.
Restricții și precizări
- pentru .
# | Punctaj | Restricții |
---|---|---|
1 | 7 | Valorile pentru sunt egale (toate bombele sunt programate să explodeze în același timp). |
2 | 13 | |
3 | 9 | |
4 | 14 | și pentru |
5 | 13 | |
6 | 2 | |
7 | 9 | |
8 | 2 | |
9 | 19 | |
10 | 12 | Fără restricții suplimentare. |
Exemplu
detonator.in
4
2
10
10 10
4
10
7 9
4 6 8
1 3 2 5
3
9
9 9
1 1 1
3
6
5 3
4 4 4
detonator.out
7
0
-2
0
Explicație
- Primul test are , iar cele bombe toate explodează după secunde. Astfel, Roman poate aștepta maxim secunde după care să înceapă procesul, dezamorsând cele trei bombe după și respectiv secunde.
- Al doilea test este ilustrat în Figura 1. În acest caz, Roman trebuie să înceapă dezamorsarea imediat, deoarece bomba ar exploda după o secundă. Singura ordine de dezamorsare validă este dată de valorile în ordinea .
- Al treilea test are trei bombe ce explodează imediat, așa că Roman ar fi trebuit să ajungă cu secunde mai devreme la dispozitiv.