Pagini recente » Cod sursa (job #302600) | Cod sursa (job #2670043) | Cod sursa (job #1730843) | Cod sursa (job #872856) | Cod sursa (job #433340)
Cod sursa(job #433340)
#include <fstream>
#include <vector>
#define INF 20002
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
struct {
int e;
int v;
}c[INF];
long a[INF];
long n, s;
int i, j, imax;
int main()
{
fin >> n >> s;
for ( i = 1; i <= n; i++)
fin >> c[i].e >> c[i].v;
fin.close();
for ( i = 0; i <= s; i++)
a[i] = INF;
a[c[1].e] = c[1].v;
a[0] = 0;
for ( i = 0; i <= s; i++)
for ( j = 1; j <= n; j++)
if ( a[i] != INF)
if ( a[i+c[j].e] > a[i] + c[j].v)
{
a[i+c[j].e] = a[i] + c[j].v;
if ( i + c[j].e > imax) imax = i + c[j].e;
}
long long min = a[s];
for ( i = s + 1; i <= imax; i++)
if ( a[i] < min) min = a[i];
fout << min << '\n';
fout.close();
return 0;
}