Cod sursa(job #119594)

Utilizator gcosminGheorghe Cosmin gcosmin Data 2 ianuarie 2008 10:54:14
Problema Bilute Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <stdio.h>

#define NMAX 30010
#define LL long long

int N;

int c[NMAX];
int l[NMAX];
int nr[NMAX];

int main()
{
	int i;

	freopen("bilute.in", "r", stdin);
	freopen("bilute.out", "w", stdout);

	scanf("%d", &N);

	LL cc = 0;
	for (i = 1; i <= N; i++) {
		scanf("%d %d", &c[i], &l[i]);

		nr[i] = nr[i-1] + c[i];

		cc += l[i] * c[i] + (i - 1) * c[i];
	}

	LL rez = (LL) 1 << 60;
	int jeg = 0;
	for (i = 1; i <= N; i++) {
		if (cc - l[i] * c[i] < rez) rez = cc - l[i] * c[i], jeg = i;

		cc += nr[i] - (nr[N] - nr[i]);
	}

	printf("%d %lld\n", jeg, rez);

return 0;
}