Cod sursa(job #1264813)

Utilizator valentin11cCraciun Valentin-Gabriel valentin11c Data 16 noiembrie 2014 12:30:22
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("rucsac.in");
ofstream g("rucsac.out");
int w[5050],p[5050],a[10050],sol,n,G;
void Read()
{
    f>>n>>G;
    for(int i=1;i<=n;i++)
    {
    f>>w[i]>>p[i];
    }
}
void Solve()
{
    for(int i=1;i<=n;i++)
    {
        for(int j=G-w[i];j>=0;--j)
        {if( a[j+w[i]] < a[j] + p[i] )
            {
                a[j+w[i]] = a[j] + p[i];
                if( a[j+w[i]] > sol)
                    sol = a[j+w[i]];
        }
    }
    }
}

int main()
{
    Read();
    Solve();
    g<<sol;
    return 0;
}