코딩/C언어

수식 나열

런던전통손만두 2019. 9. 17. 15:59
반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
#include <stdlib.h>
 
void pick(int itemSize, int* bucket, int bucketSize, int k) { //중복 조합
 
    int i, lastIndex, smallest, item, total = 0;
    if (k == 0) {
        for (i = 0; i < bucketSize; i++) {
            if (bucket[i] == 0)
            {
                printf("+ %d", i + 1);
                total += (i + 1);
            }
            else
            {
                printf("- %d", i + 1);
                total -= (i + 1);
            }
        }
        printf("= %d\n", total);
        return;
    }
    lastIndex = bucketSize - k - 1// 가장 최근에 뽑힌 수가 저장된 위치 index
 
    smallest = 0// 조합
 
    for (item = smallest; item < itemSize; item++) {
        bucket[lastIndex + 1= item;
        pick(itemSize, bucket, bucketSize, k - 1);
    }
}
int main(void)
{
    int * bucket, num;
 
    scanf("%d"&num);
    bucket = (int *)malloc(sizeof(int* num);
 
    pick(2, bucket, num, num);
}
cs

 

결과:

반응형