WA了...
每组数据都多输出一个本身(n)
有没有会的佬帮忙看看?
#include<bits/stdc++.h>
using namespace std;
int n,a[10000]={1};
void print(int t)
{
cout<<a[1];
for(int i=2;i<=t;i++)
cout<<"+"<<a[i];
cout<<'\n';
}
void dfs(int s,int sum)
{
for(int i=a[sum-1];i<=n;i++)
{
if(i<=s)
{
a[sum]=i;
s-=i;
if(s==0) print(sum);
else dfs(s,sum+1);
s+=i;
}
}
return;
}
int main()
{
cin>>n;
dfs(n,1);
return 0;
}
在线等,急
谢谢