#1057
MaxP
Considerăm un şir de numere a
1
, a
2
, …, a
N
. O secvenţă nevidă în acest şir este de forma a
i
, a
i+1
, …, a
j
, unde i ≤ j
. De exemplu, pentru N=4
şi şirul 2 3 4 3
, secvenţele nevide sunt: 2
, 2 3
, 2 3 4
, 2 3 4 3
, 3
, 3 4
, 3 4 3
, 4
, 4 3
, 3
. Definim puterea unui element a
i
ca fiind numărul de secvenţe care-l conţin pe a
i
şi în care a
i
este strict mai mare decât celelalte elemente ale fiecăreia dintre respectivele secvenţe. Astfel în şirul 2 3 4 3
puterea elementului a
1
este 1
(fiind maxim doar în secvenţa formată din el însuşi), a elementului a
2
este 2
(a
2
fiind maxim în secvenţele 2 3
şi 3
), a elementului a
3
este 6
(fiind maxim în secvenţele 2 3 4
, 2 3 4 3
, 3 4
, 3 4 3
, 4
şi 4 3
), iar a elementului a
este 1
.
Scrieţi un program care determină puterea cea mai mare a unui element din şirul dat, precum şi numărul de elemente din şir care au cea mai mare putere.
OJI 2013, Clasa a VIII-a
Problema | MaxP | Operații I/O |
maxp.in /maxp.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 32 MB
/
Stivă 32 MB
|
Id soluție | #14267672 | Utilizator | |
Fișier | maxp.cpp | Dimensiune | 1.07 KB |
Data încărcării | 26 Februarie 2019, 23:06 | Scor / rezultat | 100 puncte |
maxp.cpp: In function 'int main()': maxp.cpp:12:35: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("maxp.in", "r", stdin); ^ maxp.cpp:13:37: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("maxp.out", "w", stdout); ^ maxp.cpp:16:20: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &n); ^ maxp.cpp:19:27: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &v[i]); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 10 | 10 | ||
2 | 0 secunde | OK. | 10 | 10 | ||
3 | 0 secunde | OK. | 10 | 10 | ||
4 | 0 secunde | OK. | 10 | 10 | ||
5 | 0.004 secunde | OK. | 10 | 10 | ||
6 | 0.004 secunde | OK. | 10 | 10 | ||
7 | 0.008 secunde | OK. | 10 | 10 | ||
8 | 0.012 secunde | OK. | 10 | 10 | ||
9 | 0.016 secunde | OK. | 10 | 10 | ||
10 | 0.016 secunde | OK. | 10 | 10 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema MaxP 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ă.