Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <algorithm>
- using namespace std;
- int main()
- {
- int x,n;
- cin>>x;
- cin>>n;
- int T[n],V[n];
- for (int i=0;i<n;i++)
- cin>>T[i]>>V[i];
- int DP[n][x+1];
- for (int i=0;i<x+1;i++)
- {
- if (T[0]<=i) DP[0][i]=V[0];
- else DP[0][i]=0;
- }
- for (int i=0;i<n;i++)
- DP[i][0]=0;
- for (int i=1;i<n;i++)
- {
- for (int j=1;j<x+1;j++)
- {
- if (T[i]>j) DP[i][j]=DP[i-1][j];
- else DP[i][j]=max(DP[i-1][j-T[i]]+V[i],DP[i-1][j]);
- }
- }
- cout<<DP[n-1][x]<<endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement