Pagini recente » Cod sursa (job #1741897) | Cod sursa (job #175636) | Cod sursa (job #1209106) | Cod sursa (job #2719018) | Cod sursa (job #2370646)
// Example program
#include <bits/stdc++.h>
#define INF 0x3f3f3f3f
using namespace std;
ifstream f("energii.in");
ofstream g("energii.in");
vector <pair<int,int>> ene;
int dp[15005];
int main()
{
int g, w;
f>>g>>w;
for(int i = 0, te, tc; i < g; i++)
{
f>>te>>tc;
ene.push_back(make_pair(te, tc));
}
for(int i = 1; i <= w+10000; i++)
{
dp[i] = INF;
}
for(int i = 0; i < ene.size(); i++)
{
for(int j = w; j >= 0; j--)
{
if(dp[j] != INF)
{
dp[j + ene[i].first] = min(dp[j + ene[i].first], dp[j] + ene[i].second);
}
}
}
int answer = INF;
for(int i = w; i <= w + 10000; i++)
{
if(dp[i] != INF)
{
answer = min(answer, dp[i]);
}
}
if(answer != INF)
g<<answer;
else
g<<-1;
}