#2182
Așa cum știm, lui Gigel îi place să se joace cu numerele. A scris pe caiet un număr, apoi a văzut că din acesta se pot extrage mai multe numere cu trei cifre consecutive. De exemplu, a scris pe caiet 20172017; numerele cu trei cifre consecutive care se pot extrage sunt 201, 172, 720 și 201. Gigel începe să-și pună diferite întrebări: care este cel mai mare număr cu trei cifre consecutive obținut? Dar cel mai mic? De câte ori apar ele? Unde apar? Care este cel mai mare număr de apariții a unui număr cu trei cifre?
Fiind numărul un număr natural n și n numere naturale x (100 ≤ x ≤ 4294967295) să se determine:
1. Cel mai mic și cel mai mare număr din trei cifre consecutive care apar în cele n numere, de câte ori apar ele, în ce număr x[1] apar prima dată și în ce număr x[2] apar ultima dată.
2. Numerele din trei cifre consecutive care apar de cele mai multe ori în cele n numere.
Olimpiada Municipala de Informatica, Iasi, 2017
| Problema | 3cifre | Operații I/O |
3cifre.in/3cifre.out
|
|---|---|---|---|
| Limita timp | 1 secunde | Limita memorie |
Total: 8 MB
/
Stivă 2 MB
|
| Id soluție | #63395459 | Utilizator | |
| Fișier | cifre.cpp | Dimensiune | 2.13 KB |
| Data încărcării | 01 Martie 2026, 18:46 | Scor/rezultat | 96 puncte |
cifre.cpp: In function 'int main()': cifre.cpp:22:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (n % 1000 > nrmax) { ^ cifre.cpp:28:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (n % 1000 == nrmax) { ^ cifre.cpp:33:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (n % 1000 < nrmin) { ^ cifre.cpp:39:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (n % 1000 == nrmin) { ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 1 | 0 secunde | OK. | 3 | 3 | ||
| 2 | 0 secunde | OK. | 3 | 3 | ||
| 3 | 0 secunde | OK. | 3 | 3 | ||
| 4 | 0 secunde | OK. | 3 | 3 | ||
| 5 | 0.088 secunde | OK. | 5 | 5 | ||
| 6 | 0.084 secunde | OK. | 5 | 5 | ||
| 7 | 0.064 secunde | OK. | 5 | 5 | ||
| 8 | 0.064 secunde | OK. | 5 | 5 | ||
| 9 | 0.08 secunde | OK. | 5 | 5 | ||
| 10 | 0.08 secunde | OK. | 5 | 5 | ||
| 11 | 0.04 secunde | OK. | 4 | 4 | ||
| 12 | 0.04 secunde | Raspuns gresit. | 4 | 0 | ||
| 13 | 0.04 secunde | OK. | 4 | 4 | ||
| 14 | 0.04 secunde | OK. | 4 | 4 | ||
| 15 | 0.02 secunde | OK. | 4 | 4 | ||
| 16 | 0.016 secunde | OK. | 4 | 4 | ||
| 17 | 0.008 secunde | OK. | 3 | 3 | ||
| 18 | 0.008 secunde | OK. | 3 | 3 | ||
| 19 | 0 secunde | OK. | 4 | 4 | ||
| 20 | 0 secunde | OK. | 4 | 4 | ||
| 21 | 0.084 secunde | OK. | 10 | 10 | ||
| 22 | 0.08 secunde | OK. | 10 | 10 | ||
| Punctaj total | 96 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema 3cifre 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ă.