Bal Mascat

Time limit: 0.02s Memory limit: 2MB Input: balmascat.in Output: balmascat.outPoints by default: 10p

Un grup de copii participă la un Bal Mascat. Participanții nu pot să-și aleagă singuri costumul. Organizatorii au pregătit exact atâtea costume câți copii sunt. Au ambalat costumele în cutii numerotate și le-au așezat într-o cameră. Copiii intră în camera cu costume și își aleg câte o cutie (la întâmplare). Fiind puși pe glume, organizatorii au scos încălțămintea din anumite cutii, după regula: cutia cu numărul pp ramâne fără încălțări, apoi cutia cu numarul 2p2 \cdot p, apoi cutia cu numărul 3p3 \cdot p și așa mai departe până la terminarea cutiilor. Dacă ultima cutie a rămas cu tot costumul, atunci organizatorii scot încălțămintea și din ea.

După ce primesc cutiile cu costume, copiii constată că nu se pot deschide decât cu ajutorul unui cod (același la toate cutiile). Organizatorii le dau indicii despre cum să afle codul: se calculează numărul de cutii care au rămas fără încălțăminte, se află ultima cifră din acest număr (notată cu cc). Apoi se formează un cod intermediar cu exact 2p2 \cdot p cifre, astfel: dacă cc are o valoare diferită de 99, atunci prima cifră (pornind de la stânga numărului) are valoarea (c+1)(c+1). Dacă cc are valoarea 99 atunci prima cifră este (c1)(c-1). A doua cifră are valoarea cc. A treia cifră este egală cu prima, cifra a patra urmând să fie egală cu a doua și tot așa până se află toate cele 2p2 \cdot p cifre. La final, se taie ultima cifră și ajungem la codul corect cu care se deschid cutiile.

Cerinţă

Scrieţi un program care să îi ajute pe copii să afle codul cu care se deschid cutiile.

Date de intrare

Fişierul de intrare balmascat.in conţine pe prima linie 22 valori: un număr natural nn ce reprezintă numărul de copii ce participă la balul mascat și un număr pp ce reprezintă pasul cu care se stabilesc cutiile din care se scot încălțările.

Date de ieşire

Fişierul de ieşire balmascat.out va conţine codul de acces cu care se deschid cutiile.

Restricţii și precizări

  • 11n10 00011 \leq n \leq 10 \ 000
  • 1p81 \leq p \leq 8

Exemplul 1

balmascat.in

15 3

balmascat.out

65656

Explicație

Se află numărul de cutii rămase fără încălțăminte: 55 (cutiile: 33, 66, 99, 1212 și 1515). Ultima cifră a lui 55 este 55 (cc are o valoare diferită de 99 deci folosim pe pozițiile impare cifra obținută din expresia c+1c+1, adică 66). Valoarea lui pp este 33, de aceea codul intermediar va avea 2p=62 \cdot p = 6 cifre: 656565656565.

Codul final are doar primele 55 cifre din cel intermediar: 6565665656

Exemplul 2

balmascat.in

21 6

balmascat.out

21212121212

Explicație

Numărul de cutii rămase fără încălțăminte: 7171 (cutiile: 66, 1212, 1818, 2424, \dots, 414414, 420420 și 421421). Ultima cifră a lui 7171 este 11. Valoarea pasului pp este 66, de aceea codul intermediar va avea 1212 cifre iar cel final va avea 1111 cifre: 2121212121221212121212 (c=1c=1 deci folosim pe poziții impare valoarea c+1c+1, adică 22)

Exemplul 3

balmascat.in

35 4

balmascat.out

8989898

Explicație

Numărul de cutii rămase fără încălțăminte: 99 (cutiile: 44, 88, 1212, 1616, 2020, 2424, 2828, 3232 și 3535). Ultima cifră a lui 99 este 99. (cc are valoarea 99, deci cifrele de pe poziții impare din cod au valoarea c1=8c-1=8)

Valoarea pasului pp este 44, de aceea codul intermediar va avea 88 cifre: 8989898989898989 iar codul final va avea 77 cifre: 89898988989898.

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