Pagini recente » Cod sursa (job #1350055) | Cod sursa (job #2462401) | Cod sursa (job #1783229) | Cod sursa (job #411390) | Cod sursa (job #2165920)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
struct gen{
int cost;
int energ;
};
gen t[1001];
int e,n,m,i,j,k,x;
int cmin=1000000000;
bool compare(gen a, gen b)
{
return a.energ<b.energ||(a.energ==b.energ&&a.cost<b.cost);
}
void calc(int i, int en, int cost)
{
if(en>=e) cmin=min(cmin,cost);
else
{
for(int j=i+1;j<=n;j++) calc(j,en+t[j].energ,cost+t[j].cost);
}
}
int main(){
fin>>n;
fin>>e;
for(i=1;i<=n;i++) fin>>t[i].energ>>t[i].cost;
sort(t+1,t+n+1,compare);
for(i=1;i<=n;i++)
if(t[i].cost<=cmin) calc(i,t[i].energ,t[i].cost);
fout<<cmin;
return 0;
}