Cod sursa(job #2615675)

Utilizator Mihai.MocanuMihai mmm Mihai.Mocanu Data 15 mai 2020 10:28:11
Problema Energii Scor 100
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <stdio.h>
#include <stdlib.h>

int v[15002];

int main(){
    int n,z,t,i,a,b;

    FILE *fin,*fout;
    fin=fopen("energii.in","r");
    fout=fopen("energii.out","w");
    fscanf(fin,"%d%d",&n,&t);


    for(i=0;i<15000;i++){
      v[i]=10000000;
    }
    v[0]=1;

    for(z=0;z<n;z++){
      fscanf(fin,"%d%d",&a,&b);
      for(i=t-1;i>=0;i--){
        if(i+a<=t){
          if(v[i+a]>v[i]+b){
            v[i+a]=v[i]+b;
          }
        }else{
          if(v[t]>v[i]+b){
            v[t]=v[i]+b;
          }
        }
      }
    }

    if(v[t]==10000000){
      fprintf(fout,"-1");
    }else{
      fprintf(fout,"%d",v[t]-1);
    }



    fclose(fin);
    fclose(fout);
    return 0;
}