1 solutions
-
0
C++ :
#include <iostream> #include <cstdio> #include <algorithm> #include <cmath> #include <cstdlib> #include <cstring> using namespace std; const int N=111111; long long w[N]; long long v[N]; long long dp[1111]; int main() { long long T,t,n; memset(dp,0,sizeof(dp)); cin>>t>>n; //cout<<"n::"<<t<<endl; for(long long i=0;i<n;i++) { cin>>w[i]>>v[i]; } for(long long i=0;i<n;i++) { for(long long j=t;j>=w[i];j--) { dp[j]=max(dp[j],dp[j-w[i]]+v[i]); } } cout<<dp[t]<<'\n'; return 0; }
- 1
Information
- ID
- 17633
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By