Cod sursa(job #128268)

Utilizator a7893Nae Mihai a7893 Data 26 ianuarie 2008 19:13:55
Problema Bilute Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<stdio.h>
#define N 30001
int n,c[N],l[N],cost[N],nr[N];
void read()
{
	int i;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%d%d",&c[i],&l[i]);
		nr[i]=c[i]+nr[i-1];
	}
}
void solve()
{
	int i,poz;
	for(i=2;i<=n;i++)
		cost[1]+=(i-1)*c[i]+c[i]*l[i];
	for(i=2;i<=n;i++)
		cost[i]=cost[i-1]-c[i]*l[i]+c[i-1]*l[i-1]+nr[i-1]-(nr[n]-nr[i-1]);
	poz=1;
	for(i=1;i<=n;i++)
		if(cost[i]<cost[poz])
			poz=i;
	printf("%d %d\n",poz,cost[poz]);
}
int main()
{
	freopen("bilute.in","r",stdin);
	freopen("bilute.out","w",stdout);
	read();
	solve();
	return 0;
}