Pagini recente » Cod sursa (job #317681) | Cod sursa (job #1090801) | Cod sursa (job #2652958) | Cod sursa (job #2603932) | Cod sursa (job #1150594)
#include<fstream>
using namespace std;
#define maxn 5002
#define maxg 10003
ifstream f("rucsac.in");
ofstream g("rucsac.out");
unsigned int R[maxn][maxg],n,G;
struct pereche{
int gr,pr;
};
pereche P[maxn];
int main(){
f>>n>>G;
for(int i=1;i<=n;++i){
f>>P[i].gr>>P[i].pr;
}
for(int i=1;i<=n;++i)
for(int j=1;j<=G;++j){
if(j>=P[i].gr)
R[i][j]=max(max(R[i-1][j],R[i][j-1]),R[i-1][j-P[i].gr]+P[i].pr);
else
R[i][j]=max(R[i-1][j],R[i][j-1]);
}
g<<R[n][G];
}