재 귀 알고리즘 - 다 원 일차 방정식 풀이

1021 단어 c
/**
 *   x1+x2+x3+...+x10 = 10       
 */
#include<stdio.h>
static int ans_sum ;
int n=10;
int numx=10;
int ans[10];
void print_ans()
{
        int i;
        for (i = numx - 1; i >= 0; i--) {
                printf("%d ", ans[i]);
        }
        printf("
"); } void solve(int n, int numx) { int i; if (n < 0) return; if (numx == 1) { ans_sum++; ans[numx - 1] = n; print_ans(); return; } for (i = 0; i <= n; i++) { ans[numx - 1] = i; solve(n - i, numx - 1); } } int main(int argc, char *argv[]) { solve(n,numx); printf("total :%d
", ans_sum); return 0; }

좋은 웹페이지 즐겨찾기