cartonas

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

Avem la dispoziţie cartonaşe dreptunghiulare pe care sunt inscripţionate numere naturale şi o valoare dată xx. Pornind de la un număr NN de astfel de cartonaşe, aşezate alăturat şi considerate a forma nivelul de bază (notat cu 11), se formează următoarele N1N - 1 niveluri după regulile de mai jos (a se vedea şi figura din exemplu pentru clarificare):

  • numărul de cartonaşe de pe un nivel oarecare este cu 11 mai mic decât numărul de cartonaşe de pe nivelul imediat inferior
  • numărul înscris pe orice cartonaş se obţine ca sumă a numerelor de pe cartonaşele peste care “se aşează”, cartonaşe aflate pe nivelul imediat inferior.

Pe fiecare nivel se calculează suma numerelor de pe toate cartonaşele. Se vor forma astfel NN sume care se reprezintă fiecare în baza 22.

Exemplu:

Cerinţă

  1. Să se afişeze numărul inscripţionat pe cartonaşul de pe ultimul nivel.
  2. Să se precizeze numărul nivelului pe care se află valoarea dată xx
  3. Să se afişeze numerele nivelelor în ordinea descrescătoare a numărului de cifre egale cu 11 din reprezentarea în baza 22 a sumei fiecărui nivel. Dacă există două nivele cu sumă având acelaşi număr de cifre egale cu 11, se va afişa mai întâi nivelul cu numărul mai mic.

Date de intrare

În fişierul cartonas.in se află:

  • pe prima linie un număr natural NN care reprezintă numărul de cartonaşe ce formează nivelul 11 (nivelul de bază)
  • pe a doua linie un număr natural xx care reprezintă valoarea căutată
  • pe a treia linie se află cele NN numere de pe nivelul 11 (de bază), separate două câte două printr-un spaţiu

Date de ieşire

În fişierul cartonas.out se va scrie:

  • pe prima linie numărul inscripţionat pe cartonaşul de pe ultimul nivel
  • pe linia a doua se va afişa nivelul pe care se află valoarea căutată xx
  • pe linia a treia se vor afişa numerele de nivel în ordinea cerută, separate două câte două printr-un spaţiu

Restricţii şi precizări

  • 1N1001 \leq N \leq 100
  • xx este număr natural de maxim 77 cifre
  • Valorile de pe cartonaşe sunt numere naturale de maxim 77 cifre
  • Se ştie că există suficiente cartonaşe cu inscripţia oricărui număr necesar, numerele de pe nivelul de bază nu conduc la numere pe celelalte nivele care să aibă mai mult de 77 cifre, iar sumele de pe fiecare nivel au maxim 99 cifre.
  • Se acordă punctaje parţiale: 30%30\% din punctaj pentru cerinţa 11, 30%30\% din punctaj pentru cerinţa 22 şi 40%40\% din punctaj pentru cerinţa 33

Exemplu

cartonas.in

4
8
1 2 3 2

cartonas.out

18
3
2 3 4 1

Explicaţie

Pe ultimul nivel se va găsi valoarea 1818, iar valoarea 88 se găseşte pe nivelul al treilea, conform desenului şi cerinţelor.
Pe primul nivel S=1+2+3+2=8=1000(2)S = 1 + 2 + 3 + 2 = 8 = 1000_{(2)}, adică are 11 cifră egală cu 11
Pe cel de-al doilea nivel S=3+5+5=13=1101(2)S = 3 + 5 + 5 = 13 = 1101_{(2)}, adică are 33 cifre egale cu 11
Pe cel de-al treilea nivel S=8+10=18=10010(2)S = 8 + 10 = 18 = 10010_{(2)}, adică are 22 cifre egale cu 11
Pe cel de-al patrulea nivel S=18=10010(2)S = 18 = 10010_{(2)}, adică are 22 cifre egale cu 11

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