banda

Time limit: 0.05s Memory limit: 2MB Input: banda.in Output: banda.out

Pe o masă orizontală se află o bandă super-flexibilă, formată din 2n2^n pătrăţele de latură 11 cm. Grosimea benzii este de 11 mm. Pătrăţelele sunt numerotate de la stânga la dreapta de la 11 la 2n2^n. Această bandă se poate plia în două, suprapunând o parte peste cealaltă (stânga peste dreapta sau invers). Astfel, anumite poziţii se suprapun şi se obţine grosime dublă şi lungime 2n12^{n-1} cm. Banda obţinută se poate plia iar în două. Acest procedeu se repetă de nn ori, până se obţine grosimea 2n2^n mm şi lungimea 11 cm (adică toată pătrăţelele se vor suprapune, formând o singură coloană).

Folosind o pioneză, vom fixa de masă pătrăţelul kk al benzii şi aplicăm procedeul de pliere descris mai sus, obţinând astfel o coloană a cărei bază este pătrăţelul kk. În cadrul acestei coloane vom numerota poziţiile pătrăţelelor de jos în sus de la 11 la 2n2^n).

Există două tipuri de interogări posibile:

  1. Dat fiind un pătrăţel (să-l numim pătrăţel special), să se determine poziţia lui finală (pe coloană).
  2. Dată fiind poziţia finală a pătrăţelului special, să se determine numărul său

De exemplu, pentru n=3n=3, şi k=5k=5 vom obţine.

Cerinţă

Date fiind valorile nn şi kk, scrieţi un program care răspunde la o interogare de tipul 11 sau de tipul 22.

Date de intrare

Fişierul banda.in conţine 44 linii. Pe prima linie este scris numărul natural nn. Pe a doua linie este scris numărul natural kk, reprezentând poziţia pătrăţelului fixat. Pe cea de a treia linie este scrisă o cifră cc care poate fi 11 sau 22, indicând tipul interogării. Dacă cifra cc este 11 pe cea de a patra linie este scris numărul natural ss reprezentând numărul pătrăţelului special. Dacă cifra cc este 22 pe cea de a patra linie este scris un număr natural ff reprezentând poziţia finală a pătrăţelului special.

Date de ieşire

Fişierul banda.out va conţine o singură linie pe care va fi scris un număr natural reprezentând rezultatul interogării

Restricții și precizări

  • 2n302 \leq n \leq 30
  • 1k,s,f2n1 \leq k, s, f \leq 2^n
  • Pentru 30%30\% dintre teste n7n \leq 7. Pentru 50%50\% dintre teste c=1c=1

Exemplul 1

banda.in

3
5
1
2

banda.out

6

Explicație

În exemple, banda de lungime 23=82^3=8 cm este fixată de masă pe poziţia 55.
În primul exemplu, trebuie să aflăm poziţia finală a pătrăţelului 22 (aceasta este 66).

Exemplul 2

banda.in

3
5
2
4

banda.out

8

Explicație

În al doilea exemplu, se ştie poziţia finală 44, se cere numărul pătrăţelului special (88).

Log in or sign up to be able to send submissions!