Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.81 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. bool DP [5002][5002];
  4. //int pr[1000001];
  5. int minpr=INT_MIN;
  6. int outp=INT_MAX;
  7. int pr[5002];
  8. int N,K;
  9. void nonna(int n,int Pancia,int Mangiati)
  10. {
  11. if(n==0 || Pancia<=0)
  12. {
  13. if(Mangiati>=K)
  14. {
  15. outp=min(outp,Mangiati);
  16. return 0;
  17. }
  18.  
  19. }else if(!DP[n][Pancia])
  20. {DP[n][Pancia]=true;
  21. nonna(n-1,Pancia-pr[n],Mangiati+pr[n]);
  22. nonna(n-1,Pancia,Mangiati);
  23.  
  24. }
  25.  
  26. return 0;
  27.  
  28. }
  29. int main ()
  30. {
  31. #ifdef EVAL
  32. ios_base::sync_with_stdio(false);
  33. cin.tie(NULL);
  34. freopen("input.txt","r",stdin);
  35. freopen("output.txt","w",stdout);
  36. #endif
  37. cin>>N>>K;
  38. for(int i=1;i<=N;i++)
  39. {
  40. cin>>pr[i];
  41. }
  42. nonna(N,K,0);
  43.  
  44. cout<<outp;
  45.  
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement