Fişierul intrare/ieşire:plimbare.in, plimbare.outSursăad-hoc
AutorCristian FrancuAdăugată defrancuCristian Francu francu
Timp execuţie pe test0.1 secLimită de memorie2048 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Plimbare digitală (clasele 7 - 8)

Digidroid iese la plimbare pe axa numerelor naturale. El porneşte din zero. Îşi fixează un număr n, natural, în minte şi o ţintă între 1 şi 2n-1. Apoi face n salturi pe axă de mărime 2k. Un salt se poate face înainte, către sensul pozitiv al axei, sau înapoi, către sensul negativ al axei. El trebuie sa facă n salturi, folosind toate puterile lui 2 de la 20 la 2n-1, fiecare o singură dată, în orice ordine alege el.

Cerinţă

Dîndu-se n şi numărul ţintă, să se afişeze o posiblitate de plimbare a lui Digidroid.

Date de intrare

Pe prima linie a fişierului de intrare plimbare.in se află numărul n. Pe a doua linie se află ţinta lui Digidroid, un număr între 1 şi 2n-1.

Date de ieşire

Fişierul plimbare.out va conţine n linii, fiecare linie corespunzînd unui salt. Fiecare linie va conţine un număr k, corespunzător marimii saltului 2k, apoi un spaţiu şi caracterul + dacă saltul este pozitiv, sau - dacă saltul este negativ. În caz că nu există o plimbare care să ducă la ţintă fişierul plimbare.out va conţine o singură linie pe care se va afişa 0.

Restricţii

  • 0 < n ≤ 24
  • 0 < ţinta < 2n

Exemple

plimbare.inplimbare.outExplicaţie
4
9
2 +
1 -
3 +
0 -
Ţinta este numărul 9. Digidroid face întîi un salt pozitiv de 4,
apoi unul negativ de 2, apoi unul pozitiv de 8 şi apoi unul negativ
de 1, ajungînd la ţintă.
5
27
3 +
2 +
1 -
4 +
0 +
Ţinta este numărul 27. Digidroid face întîi un salt pozitiv de 8,
apoi unul pozitiv de 4, apoi unul negativ de 2, apoi unul pozitiv
de 16 şi apoi unul pozitiv de 1, ajungînd la ţintă.
Trebuie sa te autentifici pentru a trimite solutii. Click aici