Напишите рекурсивную функцию, которая возвращает подмножества массива, которые суммируются с целью. Возвращаемый тип функции должен быть Vector. Выведите возвращаемое значение.
... code ....
vector<string> targetsum(vector<int>& array, int idx, int target)
{
if (target == 0)
{
vector<string> base;
base.push_back("");
cout << "base";
return base;
}
vector<string> myans;
for (int i = idx; i < array.size(); i++)
{
if (target - array[i] >= 0)
{
myans = targetsum(array, i + 1, target - array[i]);
myans.push_back(to_string(array[i]));
}
}
return myans;
}
например
Input:
5 // array size
1 3 5 7 0 // array
6 // target
output
[1 5 , 1 5 0 ]