Diferente pentru problema/keymess intre reviziile #4 si #5

Nu exista diferente intre titluri.

Diferente intre continut:

Daca ii oferi doua chei diferite i si j, in loc sa iti spuna exact ce sunt, masinaria va spune AND-ul bitwise al numerelor lor:
query(i, j) = a[i] & a[j]
Sarcina ta: Reconstruieşte intreaga permutare amestecata de chei a[0..n-1] folosind numarul minim posibil de intrebari catre Oracol.
Sarcina ta: Reconstruieşte intreaga permutare amestecata de chei a[1..n] folosind numarul minim posibil de intrebari catre Oracol.
h2. Date de intrare
Fişierul de intrare $dispozitiv.in$ este organizat astfel:
Pe prima linie se află $T$, numărul de teste. Descrierea fiecarui test este urmatoarea:
Pe prima linie se află $T$, numărul de teste.
Prima si singura linie a fiecarui test contine un intreg $N$
Pentru fiecare test:
* Pe prima linie se află $N$, $K$.
* Pe a doua linie se afla string-ul binar $a$ de lungime $N$.
* Pe a treia linie se află numărul $Q$.
* Pe următoarele $Q$ linii se află câte un număr $p$, cu semnificaţia că Regele Gheaţă a inversat bit-ul $p$.
h2. Date de ieşire
h2. Interactiunea
În fişierul de ieşire $dispozitiv.out$ se va afişa astfel:
Interactiunea pentru fiecare test incepe cand numarul $N$ este citit.
* Pentru fiecare test, se vor afişa $Q$ linii. Pe fiecare linie se va afla $YES$, daca toate valorile pot fi făcute $0$ sau $NO$ altfel.
Pentru a face un query, se afiseaza o linie in urmatorul format:
* ? i j
După fiecare astfel de query interactorul vă va răspunde în stdin cu numarul (a[i] & a[j]).
 
Pentru a da un raspuns, se afiseaza o linie in urmatorul format:
* ! a[1] a[2] ... a[n]
Raspunsul nu este va fi considerat la numarul de query-uri.
 
Dupa aceea, continuati la urmatorul test sau terminati programul daca este ultimul test.
 
Interactorul nu este adaptiv, ceea ce inseamna ca permutarea este predeterminata.
 
Dupa ce printati fiecare query, nu uitati sa afisati end of line si sa dati flush la output. Altfel veti primi verdictul de "Walltime limit exceeded".
 
Daca, la orice pas al interactiunii, cititi -1 in loc de date valide, solutia voastra va primi verdictul de "Query invalid" din cauza unui query invalid sau orice altei greseli.
h2. Restricţii

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.