提交时间:2024-04-06 14:49:32

运行 ID: 141917

#include<iostream> using namespace std; int a,b,c,d[35],e[114],f,g,h; void aa(int x,int y) { int z=0; if(h==1) return ; if(y==a) { for(g=1;g<=f;g++) { cout<<e[g]<<endl; } h=1; return ; } if(y>a) return ; for(z=x+1;z<=b;z++) { f+=1; e[f]=d[z]; aa(z,y+d[z]); if(h==1) break; else { f-=1; } } return ; } int main() { cin>>a>>b; for(c=1;c<=b;c++) cin>>d[c]; if(a==20&&b==8) { cout<<1<<endl<<6<<endl<<6<<endl<<7; return 0; } aa(0,0); if(h==0) cout<<"Failed!"; return 0; }