#3621
Scrieți definiția completă subprogramului C++ FMBSorted
care are doi parametri:
a
– o matrice pătratică având cel mult 2000
de linii și 2000
de coloanen
– numărul de linii și coloane ale matriceiMatricea a
memorează numai valori 0
și 1
și are proprietatea că elementele de pe fiecare linie sunt sortate, adică valorile de 0
apar la începutul fiecărei liniei, iar valorile 0
la finalul fiecărei linii. Este posibil ca o linie să conțină doar valoari de 0
sau să conțină doar valori de 1
.
Subprogramul FMBSorted
va returna numărul maxim de valori de 1
care se găsesc pe o linie.
Folclorul informatic
Problema | FMBSorted | Operații I/O |
![]() FMBSorted.in /FMBSorted.out
|
---|---|---|---|
Limita timp | 0.2 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #55408613 | Utilizator | |
Fișier | fmbsorted.cpp | Dimensiune | 215 B |
Data încărcării | 14 Ianuarie 2025, 10:15 | Scor / rezultat | Eroare de compilare |
fmbsorted.cpp: In function 'int FMBSorted(std::vector<std::vector<bool> >, int)': fmbsorted.cpp:12:45: error: no matching function for call to 'accumulate(<unresolved overloaded function type>, <unresolved overloaded function type>, int)' ma=max(ma,accumulate(a.begin,a.end,0)); ^ fmbsorted.cpp:12:45: note: candidates are: In file included from /usr/include/c++/4.8/numeric:62:0, from /usr/include/c++/4.8/bits/random.tcc:33, from /usr/include/c++/4.8/random:52, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from fmbsorted.cpp:1: /usr/include/c++/4.8/bits/stl_numeric.h:120:5: note: template<class _InputIterator, class _Tp> _Tp std::accumulate(_InputIterator, _InputIterator, _Tp) accumulate(_InputIterator __first, _InputIterator __last, _Tp __init) ^ /usr/include/c++/4.8/bits/stl_numeric.h:120:5: note: template argument deduction/substitution failed: fmbsorted.cpp:12:45: note: couldn't deduce template parameter '_InputIterator' ma=max(ma,accumulate(a.begin,a.end,0)); ^ In file included from /usr/include/c++/4.8/numeric:62:0, from /usr/include/c++/4.8/bits/random.tcc:33, from /usr/include/c++/4.8/random:52, from /usr/include/c++/4.8/bits/stl_algo.h:65, from /usr/include/c++/4.8/algorithm:62, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from fmbsorted.cpp:1: /usr/include/c++/4.8/bits/stl_numeric.h:146:5: note: template<class _InputIterator, class _Tp, class _BinaryOperation> _Tp std::accumulate(_InputIterator, _InputIterator, _Tp, _BinaryOperation) accumulate(_InputIterator __first, _InputIterator __last, _Tp __init, ^ /usr/include/c++/4.8/bits/stl_numeric.h:146:5: note: template argument deduction/substitution failed: fmbsorted.cpp:12:45: note: candidate expects 4 arguments, 3 provided ma=max(ma,accumulate(a.begin,a.end,0)); ^ fmbsorted.cpp: In function 'int main()': fmbsorted.cpp:48:31: error: could not convert '(int (*)[2001])(& a)' from 'int (*)[2001]' to 'std::vector<std::vector<bool> >' fout << FMBSorted(a, n); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema FMBSorted face parte din a doua categorie. Pentru aceste probleme se folosește un program suport, furnizat de propunătorul problemei. 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ă.