#1655
Platou
Fiind dat un şir de numere, denumim secvenţă a acestuia o parte dintre termenii şirului luaţi de pe poziţii consecutive. Denumim platou al acestui şir o secvenţă formată din valori identice. Lungimea unui platou este egală cu numărul de elemente care îl formează.
De exemplu, în şirul de numere 1 1 1 7 7 3 4 4 4 7 7
avem:
1 1 1
şi 4 4 4
ambele având lungimea 3
;7 7
(cel care începe în poziţia a patra) şi 7 7
(cel care începe pe poziţia a zecea), ambele având lungimea 2
;3
care are lungimea 1
.În schimb nu avem platoul 7 7 7 7
deoarece cele patru elemente egale cu 7
nu sunt pe poziţii consecutive!
Se dă un şir de n numere. Fiecare dintre aceste numere aparţine intervalului [0,1000000]
. Asupra acestui şir se pot efectua o singură dată următoarele două operaţiuni în această ordine:
De exemplu, dacă avem următorul şir inițial: 2 2 5 0 5 8 8 8 4 9 9 9 0 0 2 2 8
extragem platoul 2 2
format din elementele aflate în penultima şi antepenultima poziţie şi obţinem şirul: 2 2 5 0 5 8 8 8 4 9 9 9 0 0 8
În şirul rezultat inserăm platoul 2 2
(pe care l-am extras în pasul anterior) în poziţia a doua şi obţinem şirul: 2 2 2 2 5 0 5 8 8 8 4 9 9 9 0 0 8
Să se scrie un program care pentru un şir dat determină:
Concursul Interjudeţean de Matematică şi Informatică Grigore Moisil, 2016
Problema | Platou | Operații I/O |
platou.in /platou.out
|
---|---|---|---|
Limita timp | 1.5 secunde | Limita memorie |
Total: 64 MB
/
Stivă 64 MB
|
Id soluție | #42341672 | Utilizator | |
Fișier | platou.cpp | Dimensiune | 1.03 KB |
Data încărcării | 01 Martie 2023, 19:22 | Scor / rezultat | Eroare de compilare |
platou.cpp: In function 'int main()': platou.cpp:6:5: error: 'ifstrem' was not declared in this scope ifstrem cin("platou.in"); ^ platou.cpp:6:13: error: expected ';' before 'cin' ifstrem cin("platou.in"); ^ platou.cpp:8:28: warning: unused variable 'aux' [-Wunused-variable] int v, n, a, b, cnt=1, aux, max = 0, maxcnt=0, maxnr=0; ^ platou.cpp:8:33: warning: unused variable 'max' [-Wunused-variable] int v, n, a, b, cnt=1, aux, max = 0, maxcnt=0, maxnr=0; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Platou 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ă.