#3692
maxime
Se dă un șir V
cu N
valori naturale nenule, memorate pe poziții consecutive începând cu poziția 1
. Notăm cu S
următoarea secvență de cod aplicată asupra sa:
(C/C++) maxim = 0; rep = 0; for(i = 1; i <= N; i++) if(V[i] > maxim) maxim = V[i]; else if(V[i] == maxim) rep++;
Considerăm operația de eliminare din V
a elementului de pe o anumită poziție dată P
. În urma operației de eliminare elementele de pe pozițiile P + 1, P + 2, ..., N
ajung pe o poziție cu 1
mai mică iar N
scade cu 1
.
Dându-se mai multe operații de eliminare(independente una de alta, adică fiecare se aplică asupra șirului inițial, nu după operația anterioară), să se determine valoarea variabilei rep
dacă am aplica secvența S
asupra șirului obținut după fiecare operație de eliminare.
Concursul Național Info Pro, Etapa II
Problema | maxime | Operații I/O |
maxime.in /maxime.out
|
---|---|---|---|
Limita timp | 0.2 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #51430489 | Utilizator | |
Fișier | maxime.cpp | Dimensiune | 1.24 KB |
Data încărcării | 16 Iunie 2024, 03:50 | Scor / rezultat | Eroare de compilare |
maxime.cpp: In function 'Element* readArray(FILE*, unsigned int)': maxime.cpp:10:50: error: invalid conversion from 'void*' to 'Element*' [-fpermissive] Element* v = malloc((n + 1) * sizeof(Element)); ^ maxime.cpp:11:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 1; i <= n; i++){ ^ maxime.cpp: In function 'int Eliminare(Element*, int, unsigned int)': maxime.cpp:24:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 1; i <= n; i++){ ^ maxime.cpp: In function 'int main()': maxime.cpp:52:24: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < m; i++){ ^ maxime.cpp: In function 'Element* readArray(FILE*, unsigned int)': maxime.cpp:12:36: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf(f, "%u", &v[i].info); ^ maxime.cpp: In function 'int main()': maxime.cpp:46:24: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf(f, "%u", &n); ^ maxime.cpp:49:24: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf(f, "%u", &m); ^ maxime.cpp:53:28: warning: ignoring return value of 'int fscanf(FILE*, const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] fscanf(f, "%u", &a); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema maxime 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ă.