Advertisement
MaskerQwQ

P1439

Apr 11th, 2023
561
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.59 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. const int N=1005;
  6.  
  7. int c,n;
  8. int w[N],v[N];
  9. int dp[N][N];
  10.  
  11. int main(){
  12.     while(scanf("%d%d",&c,&n)!=EOF){
  13.         memset(dp,0,sizeof(dp));
  14.         for(int i=1;i<=n;i++){
  15.             cin>>w[i]>>v[i];
  16.         }
  17.         for(int i=1;i<=n;i++){
  18.             for(int j=1;j<=c;j++){
  19.                 if(j<w[i]){
  20.                     dp[i][j]=dp[i-1][j];
  21.                 }else{
  22.                     dp[i][j]=max(dp[i-1][j],dp[i-1][j-w[i]]+v[i]);
  23.                 }
  24.             }
  25.         }
  26.         cout<<dp[n][c]<<endl;
  27.     }
  28.     return 0;
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement