Cerința
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ă.
Restricții și precizări
a
conține cel puțin un element- toate elementele vectorului
a
sunt pozitive - Puteți utiliza în rezolvare orice structură de date
Exemplu:
Dacă a = (3,4,0,7,2)
și S=7
, atunci funcția va returna vectorul cu valorile (0,2,3)
. Există de exemplu și soluția (0,3,4)
, dar soluția optimă este un vector cu suma elementelor 5
, pe când al doilea vector are suma elementelor egală cu 7
.
Important
Soluţia propusă va conţine doar funcţia cerută. Prezenţa în soluţie a altor instrucţiuni poate duce la erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.