提交时间:2021-06-22 08:05:30

运行 ID: 20929

#include<bits/stdc++.h> using namespace std; int l=0,a[10000001],n; void check(int x,int y,int z){ if(x==0){ for(int i=1;i<z;i++){ if(i==1) cout<<n<<'='<<a[i]; else cout<<'+'<<a[i]; } cout<<endl; return; }else{ for(int i=min(x,y);i>=1;i--){ a[z]=i; check(x-i,i,z+1); } } } int main(){ cin>>n; check(n,n,1); }