Pagini recente » Cod sursa (job #1773141) | Cod sursa (job #2841949) | Cod sursa (job #1567944) | Cod sursa (job #2215802) | Cod sursa (job #633524)
Cod sursa(job #633524)
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cstring>
#define INF 1000000000
using namespace std;
int n,G,w[5005],p[5005], A[10001], B[10001];
void citire(){
ifstream fin("rucsac.in");
fin>>n>>G;
for(int i=1;i<=n;++i)
fin >> w[i]>>p[i];
fin.close();
}
void afisare(){
ofstream fout("rucsac.out");
fout << A[G];
fout.close();
}
void rezolvare(){
int p1, p2;
for(int i=1;i<=n;++i){
for(int g=1;g<=G;++g){
p1 = A[g];
p2 = 0;
if( g>=w[i])
p2 = A[g-w[i]]+p[i];
B[g] = p1>p2?p1:p2;
}
memcpy(A,B,sizeof(B));
}
}
int main(){
citire();
rezolvare();
afisare();
return 0;
}