Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.70 KB | None | 0 0
  1. #include<stdio.h>
  2. int max(int a, int b)
  3. {
  4. return (a > b)? a : b;
  5. }
  6. int main ()
  7. {
  8. int n,value[100],wt[100];
  9. int w,i,x,j,s;
  10. scanf("%d",&n);
  11. for(int i = 0;i<n;++i)
  12. {
  13. scanf("%d",&wt[i]);
  14. }
  15. for (int i= 0;i<n;++i){
  16. scanf("%d",&value[i]);
  17. }
  18. scanf("%d",&x);
  19. for(i=0;i<x;i++){
  20. scanf("%d",&w);
  21. int p[n+1][w+1];
  22. for (i = 0; i <= n; i++){
  23. for (j = 0; j <= w; j++)
  24. {
  25. if (i==0 || j==0)
  26. p[i][j] = 0;
  27. else if (wt[i-1] <= j)
  28. p[i][j] = max(value[i-1] + p[i-1][j-wt[i-1]], p[i-1][j]);
  29. else
  30. p[i][j] = p[i-1][j];
  31. }
  32. }
  33.  
  34. printf ("%d \n",p[n][w]);
  35.  
  36. }
  37. return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement