Cod sursa(job #1517461)

Utilizator NergalDarie George Nergal Data 4 noiembrie 2015 12:45:55
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.49 kb
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int n,G,sumg,suma;
struct obiect{int g,p,v;}a[5000];
int cmp(obiect A,obiect B)
{
    return A.v<B.v;
}
int main()
{
    f>>n>>G;
    for(int i=1;i<=n;i++)
        {f>>a[i].g>>a[i].p;a[i].v=a[i].p/a[i].g;}
    sort(a+1,a+n+1,cmp);
    for(int i=n;i>=1 and sumg<G;i--)
        if(sumg+a[i].g<=G)
            {sumg+=a[i].g;suma+=a[i].p;}
    g<<suma;
    return 0;
}