Pagini recente » Cod sursa (job #1201559) | Cod sursa (job #2455534) | Cod sursa (job #862948) | Cod sursa (job #2159294) | Cod sursa (job #3240514)
#include <fstream>
using namespace std;
ifstream cin ("rucsac.in");
ofstream cout ("rucsac.out");
int v[5002],v2[5002],a[2][10002];
int main(){
int n,g;
cin>>n>>g;
for(int i=1;i<=n;i++)
cin>>v[i]>>v2[i];
for(int i=1;i<=n;i++){
for(int j=1;j<=g;j++){
if(v[i]<=j && v2[i]+a[(i-1)&1][j-v[i]]>a[(i-1)&1][j])
a[i&1][j]=v2[i]+a[(i-1)&1][j-v[i]];
else
a[i&1][j]=a[(i-1)&1][j];
}
}
cout<<a[n&1][g];
return 0;
}