Advertisement
jeff69

Untitled

May 28th, 2016
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 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.  
  16. if(sum==t)
  17. {
  18. if(vr==lvr)return;
  19. if(!lvr.empty())cout<<endl;
  20. for(int i=0; i<vr.size(); i++)
  21. {
  22. cout<<vr[i];
  23. if(i!=vr.size()-1) cout<<'+';
  24. }
  25.  
  26. lvr=vr;
  27. }
  28.  
  29. if(x==n)return ;
  30. for(int i=x; i<n; i++)
  31. {
  32.  
  33.  
  34. vr.push_back(a[i]);
  35. sum+=a[i];
  36. vis[i]=1;
  37. solve(i+1);
  38. sum-=a[i];
  39. vis[i]=0;
  40. vr.pop_back();
  41.  
  42.  
  43. }
  44.  
  45.  
  46. }
  47.  
  48. int main()
  49. {
  50. /*
  51. #ifdef ONLINE_JUDGE
  52. freopen( "input.txt" , "r" , stdin);
  53. freopen( "output.txt" , "w" , stdout);
  54. #endif
  55. */
  56. //freopen("output.txt", "w", stdout);
  57.  
  58. int g=0;
  59. while (1)
  60. {
  61. memset( vis,0,sizeof vis);
  62. lvr.clear();
  63. cin>>t>>n;
  64. if(n==0)return 0;
  65. // if(g)cout<<endl;
  66. g=1;
  67. for(int i=0; i<n; ++i)
  68. {
  69. cin>>a[i];
  70.  
  71.  
  72. }
  73.  
  74. cout<<"Sums of "<<t<<":"<<endl;
  75. solve(0);
  76. if(lvr.empty())cout<<"NONE";
  77.  
  78.  
  79. }
  80.  
  81.  
  82. return 0;
  83.  
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement