Pagini recente »
Diferențe pentru problema/maxnrk între reviziile 5 și 17
Nu există diferențe între titluri.
Diferențe între conținut:
== include(page="template/taskheader" task_id="maxnrk") ==
Făt Frumos l-a scos iar pe împăratul Roș din bucluc. Drept răsplată, împăratul îi oferă lui Făt Frumos oricâți galbeni își dorește. Făt Frumos îi cere *n* galbeni. Împăratul Roș, când vede suma, se transformă în împăratul Alb (la față). Căutând în disperare un șiretlic pentru a-i da mai puțini galbeni, îi vine o idee salvatoare: îi spune lui Făt Frumos că legea împărăției spune că nici o răsplată, cât ar fi ea de mare, nu poate fi un număr cu mai mult de *k* cifre. Așa încât este gata să-i ofere un număr de galbeni de *k* cifre inclus în numărul *n*, cerut de Făt Frumos.
Făt Frumos l-a scos iar pe împăratul Roș din bucluc. Drept răsplată, împăratul i-a oferit lui Făt Frumos oricâți galbeni și-ar dori. Făt Frumos i-a cerut *n* galbeni. Împăratul Roș, când a văzut suma, s-a transformat în împăratul Alb (la față). Căutând în disperare un șiretlic pentru a-i da mai puțini galbeni, i-a venit o idee salvatoare: i-a spus lui Făt Frumos că legea împărăției dictează că nici o răsplată nu poate fi mai mare de *k* galbeni. Așa încât el, împăratul, este gata să-i ofere un număr de *k* galbeni.
Făt Frumos, fiind frumos, e cam credul, și s-a lăsat păcălit de împărat. Și fiind frumos a cam neglijat matematica și nu prea știe ce număr să aleagă din toate posibilitățile astfel încât să rămână cu cât mai mulți galbeni.
Făt Frumos, fiind frumos, e cam credul, și s-a lăsat păcălit de împărat, dar a încercat să negocieze: "împărate, măcar lasă-mă să îmi aleg un număr inclus în *n*, dar cu același număr de cifre ca și *k*". Împăratul și-a făcut socoteala că oricum iese în câștig și a acceptat.
În realitate, atât împăratul cât și Făt Frumos au cam neglijat matematica și nu au habar cum ar lua Făt Frumos mai mulți bani: dacă accepta oferta de *k* galbeni, sau dacă ia unul dintre numerele incluse in *n*, cu același număr de cifre ca și *k*? Acum, dacă a acceptat, Făt Frumos nu prea știe ce număr să aleagă din toate posibilitățile astfel încât să rămână cu cât mai mulți galbeni.
h2. Cerință
Scrieți un program care primește *n*, numărul de galbeni cerut de Făt Frumos, precum și *k*, numărul de cifre al numărului de galbeni maxim pe care poate să îl dea împăratul și afișează cel mai mare număr de *k* cifre inclus în numărul *n*.
Scrieți un program care primește *n*, numărul de galbeni cerut de Făt Frumos, precum și *k*, numărul de galbeni oferit de împărat și calculează:
# Cu cât s-a păcălit Făt Frumos cerând un număr inclus în *n*, față de cazul când accepta *k* galbeni.
# Cel mai mare număr inclus în numărul *n* care are același număr de cifre ca și *k*.
h2. Date de intrare
h2. Date de ieșire
În fișierul de ieșire $maxnrk.out$ veți scrie numărul cerut.
În fișierul de ieșire $maxnrk.out$ veți scrie:
* Pe prima linie numărul de galbeni pe care i-a pierdut Făt Frumos negociind, sau "nu" (fără ghilimele) dacă Făt Frumos nu s-a păcălit.
* Pe a doua linie numărul maxim de galbeni pe care îi poate căpăta Făt Frumos în condițiile negociate.
h2. Restricții
* 1 ≤ *n* ≤ 2 miliarde
* *n* nu conține cifre zero
* 1 ≤ *k* ≤ numărul de cifre ale lui *n*
* numărul de cifre ale lui *k* ≤ numărul de cifre ale lui *n*
* 0 < *k*
* Dacă Făt Frumos primește un număr de galbeni egal cu *k* el nu s-a păcălit
h2. Exemplu
table(example).
|_. maxnrk.in |_. maxnrk.out |_. Explicație |
| 295961898 3
| 961
| *n* este 295961898. Avem 7 numere de *k*=3 cifre incluse în *n*:
295 959 596 961 618 189 898. Dintre acestea numărul maxim este 961
| 295960898 989
| 29
960
| *n* este 295960898, iar *k* este 989, deci are trei cifre. Avem 6 numere
de 3 cifre incluse în *n*: 295 959 596 960 608 898. Dintre acestea numărul maxim
este 960. Numărul inclus 089 nu se ia în considerare, el fiind de fapt 89,
număr cu doar două cifre.
Observăm că Făt Frumos ar fi luat 989 de galbeni dacă nu negocia,
deci el s-a păcălit cu 29=989-960 galbeni.
|
| 666656666 66656666
| nu
66665666
| *n* este 666656666, iar *k* este 66656666, având opt cifre. Avem două numere
de 8 cifre incluse în *n*: 66665666 și 66656666. Dintre acestea numărul maxim
este 66665666.
Observăm că Făt Frumos ar fi luat 66656666 de galbeni dacă nu negocia,
adică mai puțin, deci el nu s-a păcălit.
|
== include(page="template/taskfooter" task_id="maxnrk") ==
Nu există diferențe între securitate.