Cod sursa(job #353313)

Utilizator taloibogdanTaloi Bogdan Cristian taloibogdan Data 4 octombrie 2009 17:23:00
Problema Bilute Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<stdio.h>
long n,nrp,nrm,i,a[31000],b[31000],s,min,mmi;
int main()
{
 freopen("bilute.in","r",stdin);
 freopen("bilute.out","w",stdout);
 scanf("%ld",&n);
 nrp=0;
 nrm=0;
 for(i=1;i<=n;++i)
    {scanf("%ld%ld",&a[i],&b[i]);
     if(i!=1)s+=(a[i]*b[i]+a[i]*(i-1));
     if(i!=1)nrp+=a[i];}
 min=s;
 mmi=1;
 for(i=2;i<=n;++i)
 {s-=nrp;
  nrm+=a[i-1];
  nrp-=a[i];
  s+=nrm;
  s+=a[i-1]*b[i-1];
  s-=a[i]*b[i];
  if(s<min){mmi=i;min=s;}}
 printf("%ld %ld\n",mmi,min);


 return 0;
}