#include<bits/stdc++.h> using namespace std; int main(){ int n,m; while(cin>>n>>m){ int ti[n+2],vi[n+2],dp[n+2]; for(int i=1;i<=n;++i) scanf("%d %d",&ti[i],&vi[i]); memset(dp,0,sizeof(dp)); for(int i=1;i<=n;++i){ for(int j=m;j>=ti[i];--j) dp[j]=max(dp[j],dp[j-ti[i]]+vi[i]); } cout<<dp[m]<<endl; } } |
Double click to view unformatted code.