Armata albastră a primit sarcina de a proteja legendarele cuburi ale dragonului. Pentru a le face treaba mai ușoară, aceștia au primit două inele fermecate cu abilitatea de a fuziona luptătorii care le poartă. Când luptători fuzionează, puterea luptătorului rezultat este egală cu suma celor două puteri inițiale, la care se adaugă produsul acestora. Formal, dacă cei doi luptători au puterile respectiv , atunci după fuzionare vor avea puterea . Generalul Abelius are nevoie ajutorul vostru pentru a testa puterea armatei albastre.
Cerință
Se dă un vector format din numere naturale reprezentând puterile luptătorilor din armata albastră, și interogări formate din câte o pereche de numere naturale și . Vi se cere să aflați puterea luptătorilor din intervalul , dacă aceștia ar fuziona folosind inelele fermecate. Fuzionarea acestora se face în ordinea indicilor, de la stânga la dreapta: cei doi luptători cei mai din stânga fuzionează, apoi rezultatul fuzionează cu cel de-al 3-lea etc.
Date de intrare
Pe prima linie a fișierului de intrare fuziune.in
se găsesc numere și reprezentând numărul de luptători din armata albastră, respectiv numărul de interogări ale generalului Abelius.
Pe a doua linie se vor găsi numere naturale , fiecare reprezentând puterea luptătorului de pe poziția .
Pe următoarele linii se vor găsi perechi de numere naturale și , câte o pereche pe câte o linie, reprezentând capetele intervalului pentru cea de-a -a interogare.
Date de ieșire
În fișierul de ieșire fuziune.out
se vor găsi numere, fiecare pe câte o linie, cel de-al -lea număr reprezentând răspunsul la cea de-a -a interogare. Deoarece rezultatul poate fi foarte mare se cere afișarea acestuia modulo .
Restricții și precizări
- ;
- ;
- ;
# | Punctaj | Restricții |
---|---|---|
1 | 15 | |
2 | 25 | |
3 | 30 | |
4 | 30 |
Exemplul 1
fuziune.in
10 5
2 5 7 3 1 3 5 6 9 2
1 4
3 5
8 10
5 5
4 7
fuziune.out
575
63
209
1
191
Explicație
Pentru prima interogare pornim de la intervalul , format din elementele .
Prima fuziune: .
Elementele din interval devin .
A doua fuziune: .
Elementele devin .
A treia fuziune: .
Rezultatul pentru prima interogare este .