提交时间:2024-04-06 15:19:10

运行 ID: 141970

#include<iostream> using namespace std; int a[33]; int bag(int tn,int ts){ if(ts==0){ return 1; } if(ts<0 || (ts>0 && tn<1)){ return 0; } if(bag(ts-a[tn],n-1)==1){ cout<<a[tn]<<endl; return 1; } return bag(ts,tn-1); } int main(){ int s,n; cin>>s>>n; for(int i=1;i<=n;i++){ cin>>a[i]; } if(!bag(s,n)){ cout<<"Failed"<<endl; } return 0; }