Проблема заключается в печати всех подмножеств, которые суммируются до значения. Я написал код, чтобы проверить, есть ли возможное подмножество. Может ли кто-нибудь дать идею напечатать числа, которые составляют сумму. Ниже мой код. Предположим, что для простоты массив содержит только + ve nos.SubsetSum Печать списка
void subsetsum(int A[], int target) {
int N = sizeof(A)/sizeof(int), sum = 0;
for(int i = 0; i < N; i++) sum += A[i];
vector<bool> V(sum + 1, 0);
V[0] = 1;
for(int i = 0; i < N; i++)
for(int j = sum; j >= 0; j--) {
if(j + A[i] <= sum && V[j]) V[A[i] + j] = 1;
}
if(V[target]) cout << "Sumbset sum exists" << endl;
else cout << "Sumbset sum doesnt exist" << endl;
}