!>problema/expanding?poza_expand2.png!
În Ţinutul Ooo, Finn şi Jake descoperă un şir magic de pietre strălucitoare aşezate în linie.
Fiecare piatră are o valoare, valori pe care le vom reprezenta cu un şir a de n elemente.
În mod important, nu există trei pietre care să aibă aceeaşi valoare.
În Tărâmul Ooo, Finn şi Jake descoperă un şir magic de pietre strălucitoare aşezate în linie.
Fiecare piatră are o valoare, valori pe care le vom reprezenta cu un şir $a$ de $n$ elemente. **Nu există trei pietre care să aibă aceeaşi valoare**.
Încercând să colecteze toate pietrele, cei doi se vor mişca după următoarele reguli:
Ei pornesc de la o poziţie p, cu o poţiune de putere c = a[p].
* Ei pornesc la o poziţie $p$, cu o poţiune de putere $c = a{~p~}$.
* La un pas, ei se pot muta doar într-o poziţie adiacentă, dacă aceasta există în şir, aceasta putând fi vizitată sau nu anterior.
La un pas, ei se pot muta doar într-o poziţie adiacentă; dacă aceasta există în şir, poate fi vizitată sau nu anterior.
* O mutare într-o poziţie vizitată anterior este mereu posibilă şi nu are niciun efect.
Pentru un ban, ei pot schimba puterea poţiunii c la orice valoare pozitivă.
* Pentru a vizita o poziţie nevizitată, trebuie să aibă puterea poţiunii $c$ egală cu valoarea poziţiei în care merg.
O mutare într-o poziţie vizitată este mereu posibilă şi nu are niciun efect.
* Pentru un ban, ei pot schimba puterea poţiunii $c$ la orice valoare pozitivă.
Pentru a vizita o poziţie nevizitată, trebuie ca puterea poţiunii c să fie egală cu valoarea poziţiei în care merg.
* Când ajung într-o poziţie nouă, ei colectează piatra din acea poziţie.
Când ajung într-o poziţie nouă, ei colectează piatra din acea poziţie.
Definim $f(p)$ ca fiind numărul minim de bani de care au nevoie cei doi pentru a putea colecta toate cele $n$ pietre, dacă pornesc în poziţia $p$ cu $c = a{~p~}$.
Definim f(p) ca fiind numărul minim de bani de care au nevoie cei doi pentru a putea colecta toate pietrele, dacă pornesc în poziţia p cu c = a[p].
Se dau $n$, şirul $a$ de $n$ elemente şi $q$ query-uri; pentru fiecare primiţi o poziţie $p$ şi trebuie să afişaţi $f(p)$.
Vi se dau n, şirul a de n elemente şi q query-uri; pentru fiecare query primiţi o poziţie p şi trebuie să afişaţi f(p).
h2. Date de intrare
Fişierul de intrare $expanding.in$ conţine pe prima linie numărul $n$, urmat pe a doua linie de şirul $a$.
* $1 ≤ p ≤ n$
|_. # |_. Punctaj |_. Restricţii |
| 1 | 10 | $n ≤ 500$ şi $q ≤ 500$ |
| 2 | 10 | $n ≤ 5000$ şi $q ≤ 10$ |
| 1 | 8 | $n ≤ 500$ şi $q ≤ 500$ |
| 2 | 9 | $n ≤ 5000$ şi $q ≤ 10$ |
| 3 | 15 | $n ≤ 5000$ şi $q ≤ 5000$ |
| 5 | 15 | $n ≤ 100 000$ şi $q ≤ 10$ |
| 5 | 25 | $n ≤ 100 000$ şi $q ≤ 100 000$ |
| 6 | 25 | $n ≤ 1 000 000$ şi $q ≤ 1 000 000$ |
| 5 | 27 | $n ≤ 100 000$ şi $q ≤ 10$ |
| 5 | 18 | $n ≤ 100 000$ şi $q ≤ 100 000$ |
| 6 | 23 | $n ≤ 1 000 000$ şi $q ≤ 1 000 000$ |
h2. Exemplu
table(example). |_. sandwich.in |_. sandwich.out |
table(example). |_. expanding.in |_. expanding.out |
| 8
2 1 3 4 6 3 2 1
8