求助,程序报segmentation Fault
查看原帖
求助,程序报segmentation Fault
31005
nnnnakosuki楼主2023/8/3 10:12
#include<bits/stdc++.h>

using namespace std;

const int N = 110;

int n,k = 0,ans = 0,num[N][N],path[N],before = 0;

void dfs(int u)
{
    if(u == n && ans == n)
    {
        for(int i = 0;i <= n;i ++ )
        {
            if(path[i])
            printf("%d ",path[i]);
        }
        puts("");
    }
    for(int i = 0;i <= n;i ++ )
    {
        if(ans < n && ans >= 0 && before <= num[u][i])
        {
           int x = before;
           before = num[u][i];
           ans += num[u][i];
           path[k ++] = num[u][i];
           dfs(u + 1);
           before = x;
           ans -= num[u][i];
           path[k] = 0;
        }
    }
}

int main()
{
    scanf("%d",&n);
    for(int i = 0;i < n;i ++ )
    {
        for(int j = 0;j <= n;j ++ )
        {
            num[i][j] = j;
        }
    }
    dfs(0);
    return 0;
}
2023/8/3 10:12
加载中...