#1070
Deal
Vasilică are la grădiniţă N
turnuri cu înălţimile h
1
, h
2
, …, h
N
. Când aşază în linie nişte turnuri, cel puţin două, astfel încât înălţimile lor să fie în ordine crescătoare, Vasilică spune că a construit un deal. Înălţimea dealului este egală cu înălţimea celui mai înalt turn folosit. Iată, de exemplu, că aşezând în ordine turnurile cu înălţimile 2 4 4 7 9
a format un deal cu înălţimea 9
.
Vasilică şi-ar dori să aşeze în linie cele N
turnuri, formând o succesiune de dealuri astfel încât suma înălţimilor dealurilor formate să fie maximă.
Scrieţi un program care, cunoscând înălţimile celor N
turnuri, va determina suma înălţimilor dealurilor ce se pot forma aşezând în linie cele N
turnuri, maximă posibil.
OJI 2012, Clasa a VIII-a
Problema | Deal | Operații I/O |
deal.in /deal.out
|
---|---|---|---|
Limita timp | 0.5 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
Id soluție | #49796542 | Utilizator | |
Fișier | deal.cpp | Dimensiune | 553 B |
Data încărcării | 15 Martie 2024, 09:18 | Scor / rezultat | Eroare de compilare |
deal.cpp: In function 'int main()': deal.cpp:21:42: error: wrong number of template arguments (0, should be 1) sort(v.begin() + 1, v.end(), greater<>()); ^ In file included from /usr/include/c++/4.8/string:48:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from deal.cpp:1: /usr/include/c++/4.8/bits/stl_function.h:222:12: error: provided for 'template<class _Tp> struct std::greater' struct greater : public binary_function<_Tp, _Tp, bool> ^ deal.cpp:9:35: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("deal.in", "r", stdin); ^ deal.cpp:10:37: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("deal.out", "w", stdout); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Deal 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ă.