Cod sursa(job #168617)

Utilizator MirageRobert Sandu Mirage Data 31 martie 2008 17:54:58
Problema Bilute Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<stdio.h>
int main () {
	freopen("bilute.in","r",stdin);
	freopen("bilute.out","w",stdout);
	int c[30001],l[30001],n,i,a[30001],poz=1;
	long long v[30001];
	scanf("%d",&n);
	a[0]=0;
	for(i=1;i<=n;++i){
		scanf("%d%d",&c[i],&l[i]);
		a[i]=a[i-1]+c[i];
	}
	for(i=2;i<=n;++i)
		v[1]+=(i-1)*c[i]+c[i]*l[i];
	for(i=2;i<=n;++i)
		v[i]=v[i-1]-c[i]*l[i]+c[i-1]*l[i-1]+2*a[i-1]-a[n];
	for(i=1;i<=n;++i)
		if(v[i]<v[poz])
			poz=i;
	printf("%d %lld\n",poz,v[poz]);
	return 0;
}