Detalii evaluare #63257290

Rezumat problemă

#3038

Aflat într-o vizită cu părinții, Iliuță primește un bilet la tombolă pe care este scris un număr natural S. Pentru a câștiga un premiu, Iliuță trebuie să afle, plecând de la numărul S, un număr câștigător X. Pentru a-l ajuta să ghicească numărul câștigător, mama îi spune lui Iliuță că numărul S de pe biletul său este suma dintre numărul câștigător X și toate numerele obținute plecând de la numărul câștigător X, prin ștergerea cifrei unităților numărului X, apoi, succesiv, prin ștergerea cifrei unităților numărului obținut la pasul anterior, până se ajunge la un număr de o singură cifră.

Cunoscându-se numerele naturale N, S1, A, B, C, D, scrieți un program care rezolvă următoarele cerințe:
1) pentru fiecare dintre termenii șirului S1, S2, …, SN, determină cel mai mare număr natural mai mic strict decât termenul respectiv, pentru care există un număr câștigător; programul va afișa restul împărțirii sumei numerelor obținute la 1018+31;
2) pentru fiecare dintre termenii șirului S1, S2, …, SN, determină câte numere naturale mai mici sau egale cu termenul respectiv NU au număr câștigător; programul va afișa restul împărțirii sumei rezultatelor obținute la 1018+31.

ONIGIM 2019, baraj
Fișiere Pracsiu Dan (dnprx) Daniela Lica concurs

Detalii

Problema tombola Operații I/O tombola.in/tombola.out
Limita timp 1 secunde Limita memorie Total: 64 MB / Stivă 64 MB
Id soluție #63257290 Utilizator fulg Nea (fulg)
Fișier tombola.cpp Dimensiune 1.94 KB
Data încărcării 23 Februarie 2026, 20:11 Scor/rezultat Eroare de compilare

Evaluare

Mesaj compilare

tombola.cpp:6:15: error: expected type-specifier before '__int128'
 using i128  = __int128; 

               ^
tombola.cpp:11:15: error: 'i128' does not name a type
 static inline i128 g_value(int64 x) {

               ^
tombola.cpp: In function 'int64 max_x_with_g_leq(int64)':
tombola.cpp:24:25: error: 'i128' was not declared in this scope
     int64 x = (int64)(((i128)9 * (i128)S) / 10);

                         ^
tombola.cpp:24:30: error: expected ')' before numeric constant
     int64 x = (int64)(((i128)9 * (i128)S) / 10);

                              ^
tombola.cpp:24:48: error: expected ')' before ';' token
     int64 x = (int64)(((i128)9 * (i128)S) / 10);

                                                ^
tombola.cpp:29:25: error: 'g_value' was not declared in this scope
     while (g_value(x + 1) <= (i128)S) x++;

                         ^
tombola.cpp:29:36: error: expected ')' before 'S'
     while (g_value(x + 1) <= (i128)S) x++;

                                    ^
tombola.cpp:29:37: error: expected ';' before ')' token
     while (g_value(x + 1) <= (i128)S) x++;

                                     ^
tombola.cpp:29:42: warning: statement has no effect [-Wunused-value]
     while (g_value(x + 1) <= (i128)S) x++;

                                          ^
tombola.cpp:32:21: error: 'g_value' was not declared in this scope
     while (g_value(x) > (i128)S) x--;

                     ^
tombola.cpp:32:31: error: expected ')' before 'S'
     while (g_value(x) > (i128)S) x--;

                               ^
tombola.cpp:32:32: error: expected ';' before ')' token
     while (g_value(x) > (i128)S) x--;

                                ^
tombola.cpp:32:37: warning: statement has no effect [-Wunused-value]
     while (g_value(x) > (i128)S) x--;

                                     ^
tombola.cpp: In function 'int main()':
tombola.cpp:58:39: error: 'g_value' was not declared in this scope
             int64 y = (int64)g_value(x); // y < 1e18+31, safe in int64

                                       ^
tombola.cpp:72:13: error: 'i128' was not declared in this scope
             i128 nxt = (i128)t * (i128)B + (i128)C;

             ^
tombola.cpp:72:18: error: expected ';' before 'nxt'
             i128 nxt = (i128)t * (i128)B + (i128)C;

                  ^
tombola.cpp:73:25: error: 'nxt' was not declared in this scope
             S = (int64)(nxt % (i128)D);

                         ^
tombola.cpp:73:37: error: expected ')' before 'D'
             S = (int64)(nxt % (i128)D);

                                     ^
tombola.cpp:71:19: warning: unused variable 't' [-Wunused-variable]
             int64 t = S % A;                 // < 1e9

                   ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema tombola face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

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ă.

Du-te sus!