Cod sursa(job #123960)

Utilizator perticas_catalinperticas catalin perticas_catalin Data 17 ianuarie 2008 20:02:32
Problema Bile2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.62 kb
//bilute
#include<stdio.h>
FILE*fin=fopen("bilute.in","r");
FILE*fout=fopen("bilute.out","w");
int main()
{
int n,c[30005],l[30005],ind,i;
long long lt=0,cs[30005],min,ss=0,sd=0,s,sum=0;
cs[0]=0;
fscanf(fin,"%d",&n);
for(i=1;i<=n;i++)
{
fscanf(fin,"%d" "%d",&c[i],&l[i]);
lt+=c[i]*l[i];
cs[i]=cs[i-1]+c[i];
}
for(i=1;i<=n;i++)
  sum+=((i-1)*c[i]);
min=lt+sum;
fclose(fin);
for(i=1;i<=n;i++)
  sd+=(i*c[i]);
for(i=1;i<=n;i++)
{
  ss+=cs[i-1];
  sd-=(cs[n]-cs[i-1]);
  s=ss+sd+lt-c[i]*l[i];
  if(s<min)
  {
    min=s;ind=i;
  }
}
fprintf(fout, "%d" "%c" "%lld",ind,' ',min);
fclose(fout);
return 0;
}