//usaco2-3-3 零的序列
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
using namespace std;
long long sum;
int n;
char c[1010];
void dfs(int d,int fu,int last,int sum)
{
if (d==n+1)
{
sum+=last*fu;
if (!sum)
{
for (int i=1;i<n;i++)printf("%d%c",i,c[i]);
printf("%d\n",n);
}
return;
}
c[d-1]=' ';dfs(d+1,fu,last*10+d,sum);
c[d-1]='+';dfs(d+1,1,d,sum+fu*last);
c[d-1]='-';dfs(d+1,-1,d,sum+fu*last);
}
int main()
{
scanf("%d",&n);
dfs(2,1,1,0);
return 0;
}
【USACO2-3-3】零的序列 dfs
最新推荐文章于 2022-04-05 14:31:48 发布