Pagini recente » Cod sursa (job #1242035) | Cod sursa (job #2352852) | Cod sursa (job #1116372) | Cod sursa (job #2862267) | Cod sursa (job #2308069)
#include <fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
struct item {
int g, p;
};
int n, g, b[5001][10001];
item a[5001];
void scrie() {
for(int i=1; i<=n; i++) {
for(int j=0; j<=g; j++)
cout<<b[i][j]<<' ';
cout<<'\n';
}
}
int main() {
cin>>n>>g;
for(int i=1; i<=n; i++) {
cin>>a[i].g>>a[i].p;
}
for(int i=1; i<=n; i++)
for(int j=1; j<=g; j++)
if(j<a[i].g)
b[i][j]=b[i-1][j];
else
b[i][j]=max(b[i-1][j], a[i].p+b[i-1][j-a[i].g]);
scrie();
return 0;
}