Advertisement
jeff69

Untitled

May 28th, 2016
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. typedef long long ll;
  4.  
  5.  
  6. int a[16];
  7. bool vis[16];
  8. vector<int> vr,lvr;
  9. int n, t,sum=0;
  10.  
  11.  
  12. void solve(int x){
  13.  
  14.  
  15. if(sum==t){
  16. if(vr==lvr)return;
  17. if(!lvr.empty())cout<<endl;
  18. for(int i=0;i<vr.size();i++){
  19. cout<<vr[i];if(i!=vr.size()-1) cout<<'+';}
  20.  
  21. lvr=vr;
  22. }
  23.  
  24. if(x==n)return ;
  25. for(int i=x;i<n;i++){
  26.  
  27.  
  28. vr.push_back(a[i]);
  29. sum+=a[i];
  30. vis[i]=1;
  31. solve(i+1);
  32. sum-=a[i];
  33. vis[i]=0;
  34. vr.pop_back();
  35.  
  36.  
  37. }
  38.  
  39.  
  40. }
  41.  
  42. int main()
  43. {
  44. #ifdef ONLINE_JUDGE
  45. freopen( "input.txt" , "r" , stdin);
  46. freopen( "output.txt" , "w" , stdout);
  47. #endif
  48.  
  49. int g=0;
  50. while (1){
  51. memset( vis,0,sizeof vis);
  52. lvr.clear();
  53. cin>>t>>n;
  54. if(n==0)return 0;
  55. // if(g)cout<<endl;
  56. g=1;
  57. for(int i=0;i<n;++i){
  58. cin>>a[i];
  59.  
  60.  
  61. }
  62.  
  63. cout<<"Sums of "<<t<<":"<<endl;
  64. solve(0);
  65. if(lvr.empty())cout<<"NONE";
  66.  
  67.  
  68. }
  69.  
  70.  
  71. return 0;
  72.  
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement