Pagini recente » Clasament concurs_infoarena | Cod sursa (job #411540) | Cod sursa (job #2800) | Cod sursa (job #1758868) | Cod sursa (job #2068342)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("energii.in");
ofstream fout("energii.out");
int cost[1005], energie[1005], minc=INT_MAX;
long double ratie[1005];
int n, g;
int main()
{
int i, j, gg, cc;
fin>>n>>g;
for(i=1; i<=n; i++)
{
fin>>energie[i]>>cost[i];
ratie[i]=(long double)(energie[i]/cost[i]);
}
for(i=1; i<=n-1; i++)
for(j=i+1; j<=n; j++)
{
if(ratie[i]>ratie[j])
{
swap(ratie[i],ratie[j]);
swap(energie[i],energie[j]);
swap(cost[i],cost[j]);
}
}
for(i=1; i<=n; i++)
{
gg=energie[i];
cc=cost[i];
j=i+1;
while(gg<g && j<=n)
{
gg+=energie[j];
cc+=cost[j];
j++;
}
if(gg>=g)
minc=min(cc,minc);
}
fout<<minc<<'\n';
return 0;
}