#958
Rareș și Didi au primit în dar o carte rară de povești, cu N+1 pagini numerotate cu numerele distincte: 0, 1, 2, 3,…, N. De ce rară? Din două motive:
C egal cu numărul de cifre folosite pentru numerotarea celor N+1 pagini ale cărții.Pentru a descoperi numărul P al paginii magice se pornește de la numărul N din care se va alege o cifră (diferită de prima și ultima cifră ale lui N), astfel încât produsul dintre prefixul lui N (reprezentând numărul format din cifrele situate la stânga cifrei alese) și sufixul lui N (reprezentând numărul format din cifrele situate la dreapta cifrei alese) să fie maxim. Numărul paginii magice va fi egal cu acest produs maxim. De exemplu, pentru N=21035 se pot obține produsele: 210*5=1050, 21*35=735, 2*35=70. Astfel numărul paginii magice este 1050.
Pasionați de povești, Rareș dorește să descopere pagina magică iar Didi și-a propus să descopere cifrul pentru deschiderea cărții.
Scrieţi un program care citeşte numărul natural nenul N şi care determină:
a) numărul P al paginii magice;
b) numărul C reprezentând cifrul de deschidere a cărții.
Olimpiada de Informatică, etapa pe sector, Bucureşti, 2014
| Problema | Povesti | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #61905721 | Utilizator | |
| Fișier | povesti.cpp | Dimensiune | 1.46 KB |
| Data încărcării | 15 Decembrie 2025, 14:58 | Scor/rezultat | Eroare de compilare |
povesti.cpp: In function 'int main()': povesti.cpp:38:20: error: 'pref' was not declared in this scope produs=pref*suf; ^ povesti.cpp:38:25: error: 'suf' was not declared in this scope produs=pref*suf; ^ povesti.cpp:41:9: error: expected ';' before '}' token } ^ povesti.cpp:53:9: error: 'suf' was not declared in this scope suf=numar%p; ^ povesti.cpp:54:9: error: 'pref' was not declared in this scope pref=numar/p; ^ povesti.cpp:7:20: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &n); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Povesti face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.