Pagini recente » Cod sursa (job #2364683) | Cod sursa (job #1362251) | Cod sursa (job #592570) | Cod sursa (job #1615955) | Cod sursa (job #1758786)
#include <bits/stdc++.h>
#define Gmax 10001
#define Nmax 5001
using namespace std;
ifstream f("rucsac.in");
ofstream gg("rucsac.out");
int n, g;
int ruc[Gmax],uz[Gmax][Nmax]={};
void rezolvare() {
f>>n>>g;
for (int i=1;i<=n;i++) {
int greu, profit;
f>>greu>>profit;
for (int j=g;j>=greu;j--) {
if (ruc[j-greu] + profit > ruc[j])
{
ruc[j] = ruc[j-greu]+profit;
for(int k=1;k<=n;k++)
{
uz[j][k]=uz[j-greu][k];
}
uz[j][i]=1;
}
}
}
f.close();
}
int main() {
rezolvare();
gg<<ruc[g]<<'\n';
/** for(int i=1;i<=n;i++)
{
cout<<uz[g][i]<<" ";
}
**/
gg.close();
return 0;
}