Diferente pentru problema/fifty intre reviziile #5 si #6

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="fifty") ==
În vremurile de graţie ale TopCoder-ului majoritatea restricţiilor din probleme erau egale cu $50$. Din cauza asta, propunătorii găseau uneori metode neortodoxe de a stoca multe query-uri în input de dimensiuni mici. Spre exemplu, să presupunem că dorim să producem multe query-uri care implică două numere naturale $X$ şi $Y$. O soluţie este să oferim un şir de caractere $'a'$ şi $'b'$ şi să considerăm că fiecare subsecvenţă a sa reprezintă un query în care $X$ este egal cu numărul de $'a'$-uri din subsecvenţă, iar $Y$ este egal cu numărul de 'b'-uri din subsecvenţă.
În vremurile de graţie ale TopCoder-ului majoritatea restricţiilor din probleme erau egale cu $50$. Din cauza asta, propunătorii găseau uneori metode neortodoxe de a cere rezolvarea a multe query-uri prin input de dimensiuni mici. Spre exemplu, să presupunem că dorim să producem multe query-uri care implică două numere naturale $X$ şi $Y$. O soluţie este să oferim un şir de caractere $'a'$ şi $'b'$ şi să considerăm că fiecare subsecvenţă a sa reprezintă un query în care $X$ este egal cu numărul de $'a'$-uri din subsecvenţă, iar $Y$ este egal cu numărul de 'b'-uri din subsecvenţă. Astfel, putem "stoca" $O(N ^ 2)$ query-uri în spaţiu $O(N)$.
 
În această problemă vi se dau $M$ query-uri care trebuie neaparat să "apară" în input, iar voi trebuie să produceţi un şir de caractere de lungime exact $N$ care să codeze aceste query-uri.
 
Spre exemplu, dacă $N = 7, M = 2$ iar cele două query-uri care trebuie incluse sunt $X = 4, Y = 2$, respectiv $X = 3, Y = 3$, atunci şirul "abaabab" este un răspuns valid, deoarece conţine subsecvenţele $"abaaba"$ şi $"baabab"$ care codifică aceste două query-uri.
h2. Date de intrare
Fişierul de intrare $fifty.in$ ...
Fişierul de intrare $fifty.in$ va conţine pe prima sa linie numărul $T$, semnificând numărul de teste. Structura unui test este următoarea: pe prima linie se vor afla numerele $N$ şi $M$. Următoarele $M$ linii vor conţine câte o pereche de numere $X Y$, semnificând valorile query-ului respectiv.
h2. Date de ieşire
În fişierul de ieşire $fifty.out$ ...
În fişierul de ieşire $fifty.out$ va conţine exact $T$ linii, fiecare conţinând un şir de caractere $'a'$ şi $'b'$ sau valoarea $-1$, în caz că nu există soluţie.
h2. Restricţii
* $1 ≤ N ≤ 50$
* $1 ≤ M ≤ 500$
* Se acceptă orice soluţie corectă.
* Dacă nu există soluţie, se va afişa $-1$.
h2. Exemplu
table(example). |_. fifty.in |_. fifty.out |
| 1
5 1
2 1
| ababb
4 2
3 3
| abaabab
|
== include(page="template/taskfooter" task_id="fifty") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.