#1054
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.
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.
OJI 2013, Clasa a VI-a
| Problema | Galbeni | Operații I/O |
galbeni.in/galbeni.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #63246288 | Utilizator | |
| Fișier | galbeni.cpp | Dimensiune | 342 B |
| Data încărcării | 23 Februarie 2026, 13:06 | Scor/rezultat | Eroare de compilare |
galbeni.cpp:3:13: error: variable 'std::ifstream cin' has initializer but incomplete type ifstream cin("galbeni.in"); ^ galbeni.cpp:4:14: error: variable 'std::ofstream cout' has initializer but incomplete type ofstream cout("galbeni.in"); ^ galbeni.cpp: In function 'int main()': galbeni.cpp:8:5: error: reference to 'cin' is ambiguous cin>>n; ^ galbeni.cpp:3:10: note: candidates are: <typeprefixerror>cin ifstream cin("galbeni.in"); ^ In file included from galbeni.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ galbeni.cpp:11:24: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if(n2=(n1*k*8)%9%k) cnt++; ^ galbeni.cpp:12:27: warning: suggest parentheses around assignment used as truth value [-Wparentheses] if(n3=(n2*k*8)%9%k) cnt++; ^ galbeni.cpp:15:5: error: reference to 'cout' is ambiguous cout<<cnt<<endl; ^ galbeni.cpp:4:10: note: candidates are: <typeprefixerror>cout ofstream cout("galbeni.in"); ^ In file included from galbeni.cpp:1:0: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^ galbeni.cpp:7:26: warning: unused variable 'N' [-Wunused-variable] int n1, n2 ,n3, n,k, N, cnt=0; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Galbeni 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ă.