#2447
forus
La ora de educație tehnologică a clasei a V-a profesorul Forus, pasionat de matematică, a adus pentru fiecare dintre cei N
elevi câte un carton pe care este scris câte un număr natural nenul. Fiecare elev poate folosi cartonul așa cum l-a primit sau poate să taie o singură dată cartonul între două cifre și să lipească partea stângă la finalul părții drepte. Elevul NU are voie să facă o tăietură în fața cifrei 0
, deci niciunul dintre numerele obținute NU poate să înceapă cu cifra 0
. Dintre toate numerele pe care le poate obține, elevul îl alege pe cel care are număr minim de divizori, iar dacă poate obține mai multe astfel de numere, îl alege pe cel mai mic dintre ele. La sfârșitul orei, profesorul strânge cartoanele cu numerele alese, în ordinea distribuirii lor.
Scrieţi un program care citeşte numărul natural N
și cele N
numere scrise pe cartoanele aduse de profesorul Forus, apoi rezolvă următoarele două cerinţe:
1. determină numărul de cartoane pe care elevii au voie să le taie de oriunde (NU conțin cifre în fața cărora NU au voie să taie);
2. determină, în ordinea strângerii cartoanelor, numerele preluate de către profesorul Forus la finalul orei.
Problema | forus | Operații I/O |
![]() forus.in /forus.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 16 MB
/
Stivă 8 MB
|
Id soluție | #49197677 | Utilizator | |
Fișier | forus.cpp | Dimensiune | 1.98 KB |
Data încărcării | 19 Februarie 2024, 19:43 | Scor / rezultat | 41 puncte |
forus.cpp: In function 'int main()': forus.cpp:8:79: warning: variable 'cccx' set but not used [-Wunused-but-set-variable] int c, cf, n, x, i, b, cnt, mind, d, minnr, p10, cx, nrcif, ccx, nrcfperm, cccx, nrcf; ^ forus.cpp:8:85: warning: variable 'nrcf' set but not used [-Wunused-but-set-variable] int c, cf, n, x, i, b, cnt, mind, d, minnr, p10, cx, nrcif, ccx, nrcfperm, cccx, nrcf; ^ forus.cpp:11:27: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf( fin, "%d", &c); ^ forus.cpp:15:27: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf( fin, "%d", &n); ^ forus.cpp:25:31: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf( fin, "%d", &x); ^ forus.cpp:51:31: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf( fin, "%d", &x); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 6 | 6 | ||
2 | 0 secunde | OK. | 6 | 6 | ||
3 | 0 secunde | OK. | 6 | 6 | ||
4 | 0.096 secunde | Raspuns gresit. | 9 | 0 | ||
5 | 0.096 secunde | Raspuns gresit. | 9 | 0 | ||
6 | 0 secunde | Raspuns gresit. | 9 | 0 | ||
7 | Depășit | Limita de timp depășită | 9 | 0 | ||
8 | Depășit | Limita de timp depășită | 9 | 0 | ||
9 | Depășit | Limita de timp depășită | 9 | 0 | ||
10 | 0.132 secunde | OK. | 9 | 9 | ||
11 | 0.028 secunde | OK. | 9 | 9 | ||
12 | 0 secunde | OK. | 5 | 5 | Exemplu | |
13 | 0 secunde | Raspuns gresit. | 5 | 0 | Exemplu | |
Punctaj total | 41 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema forus 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ă.