Pagini recente » Cod sursa (job #2048679) | Cod sursa (job #3149494) | Cod sursa (job #2524532) | Cod sursa (job #1505770) | Cod sursa (job #2823974)
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int v[1003], v1[1003], n, w, dp[1003][2], x, y, f = 10000000000;
int main()
{
fin >> n >> w;
for (int i = 0; i < n; i++)
{
fin >> v[i] >> v1[i];
}
for (int i = 0; i < n; i++)
{
dp[i][0] = v[i];
dp[i][1] = v1[i];
for (int j = 0; j < i; j++)
{
x = dp[j][0] + v[i];
y = dp[j][1] + v1[i];
if (x < w)
{
if (x > dp[i][0])
{
dp[i][0] = x;
dp[i][1] = y;
}
}
else
{
if (y < dp[i][1])
{
dp[i][0] = x;
dp[i][1] = y;
}
}
}
}
for (int i = 0; i < n; i++)
{
if (dp[i][1] >= w)
{
f = min(f, dp[i][1]);
}
}
fout << f;
}