Takahaši je zamislio permutaciju dužine i ne želi nikome da je kaže. Kako Akina ne voli tajne odlučila je da sazna barem nesto o Takahašijevoj permutaciji. Akina je uspela da ubedi Takahašija da joj najviše puta odgovori na pitanje oblika "Da li je element na poziciji manji od elementa na poziciji ". Akina će biti srećna ako sazna gde se u permutaciji nalaze brojevi i . Pomozite Akini tako što ćete postavljati pitanja umesto nje i pronaći gde se nalaze i .
Opis interakcije
- Na početku učitati broj () sa standardnog ulaza.
- Pitanja postavljate tako što na standardni izlaz ispišete "\(0 \space i \space j\)" (bez navodnika) i zatim flush-ujete output. Treba da važi .
- Nakon toga učitajte jednu reč koja je odgovor na pitanje. "DA" (bez navodnika) ako je element na poziciji manji od elementa na poziciji . U suprotnom "NE" (bez navodnika).
- Kada odredite na kojim pozicijama se nalaze brojevi i ispišite "\(1 \space i \space j\)" na standardni izlaz i flush-ujte output. treba da bude pozicija broja , a pozicija broja u permutaciji.
- Nakon što postavite pitanje ne zaboravite da ispišete novi red i flush-ujete output.
- U programskom jeziku C++ to možete uraditi sa fflush(stdout) ili cout.flush().
- U programskom jeziku Java koristite System.out.flush().
- U programskom jeziku Python koristite stdout.flush().
Primer interakcije
- Neka je zamišljena permutacija .
- Vaš program prvo učitava broj sa standardnog ulaza.
- Pretpostavimo da je prvo postavljeno pitanje "\(0 \space 1 \space 2\)". Odgovor je "DA" jer je .
- Neka je sledeće pitanje "\(0 \space 2 \space 3\)". Odgovor je "NE" jer je .
- I neka je poslednje postavljeno pitanje "\(0 \space 1 \space 3\)". Odgovor je "NE" jer je .
- Sada znamo da je manje od i pa je je i kako je , .
- Program sada treba da ispiše "\(1 \space 3 \space 2\)".
- Broj postavljenih upita je što je manje od .
Primer ulaza
3
DA
NE
NE
Primer izlaza
0 1 2
0 2 3
0 1 3
1 3 2
Comments