Cod sursa(job #1396671)

Utilizator nicholascantarNicholas David Cantar Gogitidze nicholascantar Data 22 martie 2015 20:23:50
Problema Problema rucsacului Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.62 kb
#include <fstream>

using namespace std;
int n,g,i,j,aux1,aux2,v[5001],w[5001],s;
int main()
{
    ifstream fin ("rucsac.in");
    ofstream fout ("rucsac.out");
    fin>>n>>g;
    for (i=1;i<=n;i++)
        fin>>v[i]>>w[i];

    for (i=1;i<n;i++)
    for (j=i+1;j<=n;j++)
    {
        if (w[i]<w[j])
        {
            aux1=w[i];
            aux2=v[i];
            w[i]=w[j];
            v[i]=v[j];
            w[j]=aux1;
            v[j]=aux2;
        }
    }

    i=1;
    while (g>0 && i<=n)
    {
        if (g-v[i]>=0) {g=g-v[i];s=s+w[i];}
        i++;
    }
    fout<<s;
    return 0;
}