Cod sursa(job #2372021)

Utilizator ErichaEricha Tuchila Ericha Data 6 martie 2019 20:55:52
Problema Problema rucsacului Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.59 kb
#include <stdio.h>
#include <stdlib.h>
int optim[50000001];
int main()
{
    FILE *fin, *fout;
    fin=fopen("rucsac.in", "r");
    fout=fopen("rucsac.out", "w");
    int n, g, sol=0, i, j, w, p;
    fscanf(fin, "%d %d", &n, &g);
    for(i=0; i<n; i++){
        fscanf(fin, "%d %d", &w, &p);
        for(j=g-w; j>=0; j--){
            if(optim[j+w]<optim[j]+p){
                optim[j+w]=optim[j]+p;
                if(optim[j+w]>sol)
                    sol=optim[j+w];
            }
        }
    }
    fprintf(fout, "%d", sol);
    fclose(fin);
    fclose(fout);
    return 0;
}