Fișierul intrare/ieșire | galbeni.in, galbeni.out | Sursă | OJI 2013, clasa a 6-a |
---|---|---|---|
Autor | Marius Nicoli | Adăugată de | Cristian Frâncu • francu |
Timp de execuție pe test | 0.1 sec | Limită de memorie | 16384 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
Galbeni (clasa a 6-a)
După ce au descoperit ascunzătoarea piratului Spânu, marinarii de pe corabia “Speranța” au hotărât să ofere sătenilor o parte din comoara acestuia. Întrucât comoara avea un număr nelimitat de bani din aur, numiți galbeni, singura problemă a marinarilor a fost regula după care să împartă banii. După îndelungi discuții au procedat astfel: i-au rugat pe săteni să se așeze în ordine la coadă și să vină, pe rând, unul câte unul pentru a-și ridica galbenii cuveniți. Primul sătean a fost rugat să își aleagă numărul de galbeni, cu condiția ca acest număr să fie format din exact K cifre. Al doilea sătean va primi un număr de galbeni calculat astfel: se înmulțește numărul de galbeni ai primului sătean cu toate cifrele nenule ale acelui număr, rezultatul se înmulțește cu 8 și apoi se împarte la 9 păstrându-se doar ultimele K cifre ale câtului împărțirii. Dacă numărul obținut are mai puțin de K cifre, atunci acestuia i se adaugă la final cifra 9, până când se completează K cifre. Pentru a stabili câți galbeni primește al treilea sătean, se aplică aceeași regulă, dar pornind de la numărul de galbeni ai celui de-al doilea sătean. Regula se aplică în continuare fiecărui sătean, plecând de la numărul de galbeni primiți de săteanul care a stat la coadă exact în fața lui.
Cerință
Cunoscând numărul de galbeni aleși de primul sătean, determinați numărul de galbeni pe care îl va primi al N-lea sătean.
Date de intrare
Fișierul de intrare galbeni.in conține pe prima linie cele 3 numere naturale nenule S K N separate prin câte un spațiu, unde S reprezintă numărul de galbeni ales de primul sătean, K este numărul de cifre ale numărului S, iar N reprezintă numărul de ordine al săteanului pentru care se cere să determinați numărul de galbeni primiți.
Date de ieșire
Fișierul de ieșire galbeni.out conține pe unica sa linie un număr natural reprezentând rezultatul determinat.
Restricții
- 2 ≤ N ≤ 1 000 000 000
- 1 ≤ K ≤ 3
- Se garantează că S are exact K cifre.
Exemple
galbeni.in | galbeni.out | Explicații |
---|---|---|
51 2 3 |
77 |
Primul sătean a luat 51 de galbeni. Cel de al doilea sătean va primi 26 de galbeni (51 se înmulțește cu cifrele nenule 51*5*1=255, 255 se înmulțește cu 8 =2040. Câtul împărțirii lui 2040 la 9 = 226, ultimele două cifre fiind 26). Cel de al treilea sătean va primi 77 de galbeni (26 se înmulțește cu cifrele nenule 26*2*6=312, 312 se înmulțește cu 8 și obținem numărul 2496. Câtul împărțirii dintre 2469 și 9 este 277, ultimele două cifre fiind 77) |
10 2 3 |
96 |
Primul sătean primește 10 galbeni. Pentru a calcula câți galbeni primește al doilea sătean procedăm astfel: înmulțim 10 cu cifele sale nenule: 10*1 = 10, apoi cu 8, 10*8 = 80. Câtul împărțirii lui 80 la 9 este 8. Acest număr având mai puțin de k=2 cifre, se adaugă la finalul său cifra 9 și se obține 89. Pentru al treilea sătean se pleacă de la 89 (89*8*9=6408, 6408*8=51264, câtul împărțirii lui 51264 la 9 este 5696, ultimele două cifre sunt 96) |