Cod sursa(job #1906404)

Utilizator cristiancristeavasileCristea Cristian cristiancristeavasile Data 6 martie 2017 13:49:42
Problema Energii Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("energii.in");
ofstream g("energii.out");
int main()
{
    int G,w,a[5001],b[5001],energie,min=6000,aux,s=0;
    f>>G>>w;
    for (int i=0;i<G;i++)
    {
        f>>a[i];
        f>>b[i];
    }
    for (int i=0;i<G;i++)
        if (w==a[i])
            if(b[i]<min)
                min=b[i];
    for (int i=1;i<G;i++)
        for (int j=i+1;j<=G;j++)
            if (b[i]>b[j])
            {
                aux=b[i];
                b[i]=b[j];
                b[j]=aux;
                aux=a[i];
                a[i]=a[j];
                a[j]=aux;
            }
    int i=1;
    while (w>0)
    {
        w=w-a[i];
        s=s+b[i];
        i++;
    }
    if (s<min) min=s;
    if (w>0) g<<"-1";
    else g<<min;

}