Pagini recente » Cod sursa (job #1152335) | Cod sursa (job #2890320) | Cod sursa (job #2237770) | Cod sursa (job #2738791) | Cod sursa (job #1028198)
#include <fstream>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
const int inf= 1<<30;
const int smax= 15000;
int d[smax+1];
int main( ) {
for ( int i= 1; i<=smax; ++i ) {
d[i]= inf;
}
int n, s;
fin>>n>>s;
for ( int i= 0; i<n; ++i ) {
int e, c;
fin>>e>>c;
for ( int j= smax-e; j>=0; --j ) {
if ( d[j+e]>d[j]+c ) {
d[j+e]= d[j]+c;
}
}
}
int sol= inf;
for ( int i= s; i<smax; ++i ) {
if ( d[i]<sol ) {
sol= d[i];
}
}
if ( sol==inf ) {
sol= -1;
}
fout<<sol<<"\n";
return 0;
}