Cod sursa(job #849106)

Utilizator BeilandArnoldArnold Beiland BeilandArnold Data 6 ianuarie 2013 14:13:30
Problema Problema rucsacului Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.46 kb
#include<fstream>
#include<vector>

int main(){
    std::ifstream fin("rucsac.in");
    std::ofstream fout("rucsac.out");
    unsigned short N,G;
    fin>>N>>G;
    std::vector<unsigned short> w(N),p(N);
    for(unsigned short i=0;i<N;++i) fin>>w[i]>>p[i];

    std::vector<unsigned> m(G+1,0);
    for(unsigned short i=0;i<N;++i)
        for(int j=G;j>=0;--j)
            if(j>=w[i]&&m[j]<(m[j-w[i]]+p[i])) m[j]=m[j-w[i]]+p[i];
    fout<<m[G]<<'\n';
}