Cod sursa(job #1999525)
Utilizator | Data | 11 iulie 2017 13:20:10 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 65 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
long long int w[5003],v[5003],dp[10003];
int main(){
freopen("rucsac.in","r",stdin);
freopen("rucsac.out","w",stdout);
int n, g;
cin>>n>>g;
for(int i=1;i<=n;i++)cin>>w[i]>>v[i];
for(int i=1;i<=n;i++)
for(int j=g;j>=w[i];j--)dp[j]=max(dp[j],dp[j-w[i]]+v[i]);
cout<<dp[g];
}