Mai intai trebuie sa te autentifici.
Diferente pentru problema/popa intre reviziile #25 si #7
Nu exista diferente intre titluri.
Diferente intre continut:
h2. Interacţiune
Problema aceasta este interactiva. Initial veti puteaciti de lastdin numarul $T$ de teste care va trebui sa le rezolvati. Fiecare test va avea urmatorulformat: initialveti putea citi de la $stdin$ pe $N$. Pentru a folosi tehnologia lui Ghiţă, afişaţi $0$ urmat de $4$ numere $a b c d$ la $stdout$, toateurmate(inclusiv $d$)prin spaţiu alb, apoi daţi $flush$ la stdout (de exemplu cu $fflush(stdout)$ in $C$saucu $std::cout << std::flush$ în $C++$). Apoi citiţi răspunsul la interogarea voastră din $stdin$ ({$1$}indică ca $cmmdc$-urile coincid, $0$ că nu). Pentru a vă afişa răspunsul, afişaţi $1$, urmat de răspuns, în formatul următor: mai întâi rădăcina arborelui, urmată de $N$ numere, unde al $i$-lea număr reprezintă fiul stâng al lui $i-1$, sau $-1$ dacă $i+1$ nu are fiu stâng, apoi alte $N$ numere, unde al $i$-lea număr reprezintă fiul drept al lui $i-1$, sau $-1$ daca $i-1$ nu are fiu drept, toateurmate prin spaţiu alb(inclusiv ultimul numar). Daţiapoi$flush$ la stdout.
Pentru a folosi tehnologia lui Ghiţă, afişaţi $0$ urmat de $4$ numere $a b c d$ la $stdout$, toate separate prin spaţiu alb, apoi daţi $flush$ la stdout (de exemplu cu $fflush$ in $C$ şi cu $std::flush$ în $C++$). Apoi citiţi răspunsul la interogarea voastră din $stdin$ ($1$ indică ca $cmmdc$-urile coincid, $0$ că nu). Pentru a vă afişa răspunsul, afişaţi $1$, urmat de răspuns, în formatul următor: mai întâi rădăcina arborelui, urmată de $N$ numere, unde al $i$-lea număr reprezintă fiul stâng al lui $i-1$, sau $-1$ dacă $i+1$ nu are fiu stâng, apoi alte $N$ numere, unde al $i$-lea număr reprezintă fiul drept al lui $i+1$, sau $-1$ daca $i-1$ nu are fiu drept, toate separate prin spaţiu alb. Daţi $flush$ apoi la stdout.
h2. Restricţii şi precizări * Există mereu soluţie * Orice arbore ce respectă condiţiile va fi acceptat
* Pentru$40$puncte, $N = 100$ şi $Q = 10000$ * Pentru$20$puncte, $N = 1000$ şi $Q = 20000$ * Pentru$40$puncte, $N = 1000$ şi $Q = 2000$
* Pentru 37 puncte, $N = 100$ şi $Q = 10.000$ * Pentru 24 puncte, $N = 1.000$ şi $Q = 20.000$ * Pentru 39 puncte, $N = 1.000$ şi $Q = 2.000$
* $Q$ nu este vizibil programului concurentului. h2. Exemplu
table(example). |_. stdout |_. stdin |_. Explicare | | | 1 6 | T si N | | 0 0 1 3 5 | | Interogare | | | 0 | Raspuns la interogare | | 0 4 5 1 3 | | Interogare | | | 1 | Raspuns la interogare |
table(example). |_. $stdout$ |_. $stdin$ | | 0 0 1 3 5 | | | | 0 | | 0 4 5 1 3 | | | | 1 | |
| 1
3
-1 0 -1 1 -1 -1
-1 2 -1 4 5 -1 | | Raspuns final la problema |
-1 2 -1 4 5 -1 |
h2. Explicaţie