#1046
Munte
Se consideră un şir x
1
, x
2
,…, x
n
format din n
numere naturale distincte. O secvenţă de număr maxim de elemente vecine în şir, de forma x
i
, x
i+1
,…, x
k-1
, x
k
, x
k+1
,…, x
j
(1≤i<k<j≤n
) cu proprietatea că x
i
< x
i+1
< ...< x
k-1
< x
k
> x
k+1
> ... > x
j
, se numeşte munte cu vârful x
k
. Două secvenţe munte au maxim un element comun în şir. O secvenţă munte are cel puţin 3
elemente. Un exemplu de şir format cu valorile 3 4 6 8
nu conţine nicio secvenţă munte, iar unul format cu valorile 3 4 8 1 2 5 0
conţine 2
secvenţe munte: 3 4 8 1
şi 1 2 5 0
.
După determinarea tuturor secvenţelor munte şi a vârfurilor acestora, se elimină din şir vârfurile secvenţelor munte şi procedura continuă repetat cu determinarea noilor secvenţe munte şi a vârfurilor lor din şirul nou obţinut. Procedura se opreşte în momentul în care în şir nu mai există nicio secvenţă munte.
Scrieţi un program care citeşte numerele n
, x
1
, x
2
, …, x
n
şi apoi determină:
a) numărul de secvenţe munte din şirul iniţial;
b) numărul total de secvenţe munte obţinute pornind de la şirul iniţial până la cel care nu mai conţine nicio secvenţă munte;
c) numărul de elemente din şirul final care nu mai conţine secvenţe munte.
OJI 2014, Clasa a VI-a
Problema | Munte | Operații I/O |
munte.in /munte.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
Id soluție | #49635774 | Utilizator | |
Fișier | munte.cpp | Dimensiune | 635 B |
Data încărcării | 10 Martie 2024, 19:09 | Scor / rezultat | Eroare de compilare |
munte.cpp:5:13: error: variable 'std::ifstream cin' has initializer but incomplete type ifstream cin("munte.in"); ^ munte.cpp:6:14: error: variable 'std::ofstream cout' has initializer but incomplete type ofstream cout("munte.out"); ^ munte.cpp: In function 'int main()': munte.cpp:13:5: error: reference to 'cin' is ambiguous cin>>n; ^ munte.cpp:5:10: note: candidates are: <typeprefixerror>cin ifstream cin("munte.in"); ^ In file included from munte.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ munte.cpp:15:9: error: reference to 'cin' is ambiguous cin>>m; ^ munte.cpp:5:10: note: candidates are: <typeprefixerror>cin ifstream cin("munte.in"); ^ In file included from munte.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ munte.cpp:37:5: error: reference to 'cout' is ambiguous cout<<max<<" "<<bc; ^ munte.cpp:6:10: note: candidates are: <typeprefixerror>cout ofstream cout("munte.out"); ^ In file included from munte.cpp:1:0: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Munte 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ă.