Cod sursa(job #785792)
Utilizator | Radu Bucur radu_bucur | Data | 9 septembrie 2012 21:02:39 |
---|---|---|---|
Problema | Energii | Scor | 5 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.48 kb |
#include <fstream>
using namespace std;
ifstream in("energii.in");
ofstream out("energii.out");
int maxi, n, i, j, m, e[1010], c[1010], a[15020];
int main(){
in>>n>>m;
for (i=1;i<=n;i++)
in>>e[i]>>c[i];
for (i=1;i<=15010;i++) a[i]=-1;
a[0]=0;
for (i=1;i<=n;i++)
for (j=m;j>=0;j--)
if (a[j]!=-1&&a[j]+c[i]>a[j+e[i]]) a[j+e[i]]=a[j]+c[i];
maxi=99999999;
for (i=m;i<=15010;i++)
if (maxi>a[i]&&a[i]>0) maxi=a[i];
out<<maxi;
return 0;
}