#3799
Scrieți funcția care are antetul:
vector<int> CountNum(vector<int> &a, int S)
Funcția va returna un vector care să memoreze, în ordine crescătoare, un număr cât mai mare de numere din a
care au suma mai mică sau egală cu S
. Dacă există mai multe soluții se va returna vectorul care are suma elementelor minimă.
Problema | CountNum | Operații I/O |
![]() countnum.in /countnum.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 128 MB
/
Stivă 64 MB
|
Id soluție | #57875651 | Utilizator | |
Fișier | countnum.cpp | Dimensiune | 375 B |
Data încărcării | 28 Aprilie 2025, 19:34 | Scor / rezultat | Eroare de compilare |
In file included from /usr/include/c++/4.8/algorithm:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from countnum.cpp:1: /usr/include/c++/4.8/bits/stl_algo.h: In instantiation of '_RandomAccessIterator std::__unguarded_partition(_RandomAccessIterator, _RandomAccessIterator, const _Tp&, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Tp = int; _Compare = CountNum(std::vector<int>&, int)::__lambda4]': /usr/include/c++/4.8/bits/stl_algo.h:2296:78: required from '_RandomAccessIterator std::__unguarded_partition_pivot(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = CountNum(std::vector<int>&, int)::__lambda4]' /usr/include/c++/4.8/bits/stl_algo.h:2337:62: required from 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Size = int; _Compare = CountNum(std::vector<int>&, int)::__lambda4]' /usr/include/c++/4.8/bits/stl_algo.h:5499:44: required from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<int*, std::vector<int> >; _Compare = CountNum(std::vector<int>&, int)::__lambda4]' countnum.cpp:14:6: required from here /usr/include/c++/4.8/bits/stl_algo.h:2263:35: error: no match for call to '(CountNum(std::vector<int>&, int)::__lambda4) (int&, const int&)' while (__comp(*__first, __pivot)) ^ countnum.cpp:11:31: note: candidates are: sort(a.begin(), a.end(), [](int &a, int&b) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from countnum.cpp:1: /usr/include/c++/4.8/bits/stl_algo.h:2263:35: note: bool (*)(int&, int&) <conversion> while (__comp(*__first, __pivot)) ^ /usr/include/c++/4.8/bits/stl_algo.h:2263:35: note: candidate expects 3 arguments, 3 provided countnum.cpp:11:46: note: CountNum(std::vector<int>&, int)::__lambda4 sort(a.begin(), a.end(), [](int &a, int&b) ^ countnum.cpp:11:46: note: no known conversion for argument 2 from 'const int' to 'int&' In file included from /usr/include/c++/4.8/algorithm:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from countnum.cpp:1: /usr/include/c++/4.8/bits/stl_algo.h:2266:34: error: no match for call to '(CountNum(std::vector<int>&, int)::__lambda4) (const int&, int&)' while (__comp(__pivot, *__last)) ^ countnum.cpp:11:31: note: candidates are: sort(a.begin(), a.end(), [](int &a, int&b) ^ In file included from /usr/include/c++/4.8/algorithm:62:0, from /usr/include/i386-linux-gnu/c++/4.8/bits/stdc++.h:64, from countnum.cpp:1: /usr/include/c++/4.8/bits/stl_algo.h:2266:34: note: bool (*)(int&, int&) <conversion> while (__comp(__pivot, *__last)) ^ /usr/include/c++/4.8/bits/stl_algo.h:2266:34: note: candidate expects 3 arguments, 3 provided countnum.cpp:11:46: note: CountNum(std::vector<int>&, int)::__lambda4 sort(a.begin(), a.end(), [](int &a, int&b) ^ countnum.cpp:11:46: note: no known conversion for argument 1 from 'const int' to 'int&'
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema CountNum 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ă.