Pagini recente » Borderou de evaluare (job #1036809) | Cod sursa (job #134039) | Cod sursa (job #158124) | Cod sursa (job #2057688) | Cod sursa (job #2683979)
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream fout("rucsac.out");
int n, g, dp[10001], w, p;
int main()
{
f>>n>>g;
for (int i = 1; i <= n; ++i)
{
f>>w>>p;
for (int j = g - w; j > 0; --j)
{
if (dp[j] + p > dp[j + w])
dp[j + w] = dp[j] + p;
}
if (dp[w] < p)
dp[w] = p;
}
fout<<dp[g];
f.close();
fout.close();
return 0;
}