Пожалуйста, укажите полную программу ...Нахождение всех подмножеств массива и суммы отдельных подмножеств на различные массивы в языке Си
, например,
a[2] = {3,1};
подмножества будет
{}
{3}
{1}
{3,1}
сумма отдельных подмножеств будет
{} -> 0
{3} -> 3
{1} -> 1
{3,1} -> 4
эта сумма отдельных подмножеств в массиве как
aa[] = {0,3,1,4};
EDIT: Я попытался это:
n
является размер массиваa
является входной массивaa
- это выходной массив, содержащий сумму отдельных подмножеств.
Вот код:
aa[0] = 0;
z = 1;
for (c = 1; c <= n; c++) {
for (d = 0; d <= n - c; d++) {
if (c == 1) {
sum1 += a[d];
} else {
k = d + c - 1;
for (j = k; j < n; j++) {
for (i = d; i < k; i++)
sum1 += a[i];
sum1 += a[j];
}
}
aa[z] = sum1;
z++;
sum1 = 0;
}
}
подсказка: есть '2 ** n' различные подмножества в массиве' n' элементов, простое решение для наборов до 30 элементов будет достаточно. – chqrlie
Покажите, что вы пробовали. – chqrlie