Diferente pentru problema/queries intre reviziile #2 si #15

Diferente intre titluri:

queries
Queries

Diferente intre continut:

== include(page="template/taskheader" task_id="queries") ==
//O sa schimb povestea.
Hei, ia uite, esti in comisie din nou. Nu-ti place sa fii in comisie. E stresant, iar oamenii iti adreseaza injuraturi, injuraturile devin hashtaguri, popelile devin meme-uri. Ce viata.
Ai un sir $V$ de $N$ numere. Sirul asta e parte dintr-un test pentru problema de query de maxim pe subsecventa. Acum vrei sa generezi niste query-uri bune pentru sirul asta. Vrei sa generezi $M$ query-uri si stii si raspunsul la fiecare. Daca e necesar ca fiecare query sa fie distinct, care este suma maxima posibila a lungimilor query-urilor?
Toata comisia este de acord ca in fiecare an e nevoie de o problema $100%$ clasica. Tu nici nu mai tii minte ce parere ai despre asta. Cert e ca ti s-a dat sa faci testele pentru urmatoarea problema:
 
<Vi se da un sir de $N$ numere si $M$ query-uri de forma "care este valoarea maxima din subsecventa $[x, y]?$". Raspundeti la query-uri cu un RMQ.>
 
Munca pentru pregatirea acestei probleme a fost paralelizata (more like paralizata, am I right?) in urmatorul fel: o persoana construieste secventa de numere. O alta persoana decide numarul de query-uri si raspunsurile acestora. Iar tu alegi efectiv query-urile pentru care se obtin aceste raspunsuri. Inteligent, nu?
 
Fiindca nu vrei sa intre cele mai nefericite bruturi, iti doresti ca suma lungimilor query-urilor pe care le propui sa fie maxim posibila. De-asemenea, fiindca exista pe lume oameni care memoizeaza si la genul asta de probleme, iti doresti ca toate query-urile sa fie distincte.
h2. Date de intrare
Fişierul de intrare $queries.in$ ...
Fişierul de intrare $queries.in$ va contine pe prima sa linie numarul $T$, reprezentand numarul de teste. Structura unui test este urmatoarea: pe prima linie se afla numerele $N M$, reprezentand numarul de numere din sir, respectiv numarul de query-uri pe care le vei crea. Urmeaza o linie cu $N$ numere, reprezentand valorile din sir. Apoi urmeaza o linie de $M$ numere, reprezentand raspunsurile pe care trebuie sa le produca aceste query-uri.
h2. Date de ieşire
În fişierul de ieşire $queries.out$ ...
În fişierul de ieşire $queries.out$ se vor afla $T$ linii, fiecare continand un singur numar intreg, reprezentand lungimea totala maxim posibila a unor query-uri care respecta conditiile din input. In caz ca un asemenea set de query-uri nu exista, vei afisa $-1$ si iti vei trata colegii cu si mai putin respect.
h2. Restricţii
* $... &le; ... &le; ...$
* $1 &le; T &le; 10$
* $1 &le; N, M &le; 10^5^$
* $1 &le; valorile din sir &le; 10^9^$
h2. Exemplu
table(example). |_. queries.in |_. queries.out |
| 1
| 2
5 3
1 2 5 2 1
5 5 5
3 4
5 3 2
5 5 5 5
| 13
-1
|
h3. Explicaţie
 
Vrei sa ai $3$ query-uri cu raspunsul $5$. Doua vor avea lungime $4$ iar unul va avea lungime $5$
 
== include(page="template/taskfooter" task_id="queries") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.