Advertisement
a53

Plata3

a53
Oct 14th, 2019
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. #include <iostream>
  2. #define MAX 7
  3. using namespace std;
  4. int n,S,b[MAX],x[MAX],y[MAX];
  5.  
  6. void citire()
  7. {
  8. cin>>n>>S;
  9. for(int i=1;i<=n;++i)
  10. cin>>b[i],y[i]=S/b[i];
  11. }
  12.  
  13. int suma(int k)
  14. {
  15. int s=0;
  16. for(int i=1;i<=k;++i)
  17. s+=x[i]*b[i];
  18. return s;
  19. }
  20.  
  21. int valid(int k)
  22. {
  23. return S>=suma(k);
  24. }
  25.  
  26. void scrie()
  27. {
  28. for(int i=1;i<=n;++i)
  29. cout<<x[i]<<' ';
  30. cout<<'\n';
  31. exit(0);
  32. }
  33.  
  34. void bk(int k)
  35. {
  36. if(k==n+1)
  37. {
  38. if(suma(n)==S)
  39. scrie();
  40. }
  41. else
  42. for(int i=0;i<=y[k];++i)
  43. {
  44. x[k]=i;
  45. if(valid(k))
  46. bk(k+1);
  47. }
  48. }
  49.  
  50. int main()
  51. {
  52. citire();
  53. bk(1);
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement