Cod sursa(job #495978)

Utilizator antoanelaAntoanela Siminiuc antoanela Data 27 octombrie 2010 14:37:39
Problema Inundatii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <cstdio>
#define nmax 50010

int n, x[nmax], y[nmax], z[nmax];
long long sol;

void calc()
{
	int i, m;
	m=x[n/2+1]-n/2-1;
	for (i=1; i<=n; i++) 
		if (m+i>x[i]) 
			sol+=(long long) m+i-x[i]; else
			sol+=(long long) x[i]-m-i;
}

int main()
{
	freopen("inundatii.in","r",stdin);
	freopen("inundatii.out","w",stdout);
	scanf("%d",&n);
	int i;
	for (i=1; i<=n; i++) scanf("%d %d %d",&x[i],&y[i],&z[i]);
	calc();
	for (i=1; i<=n; i++) x[i]=y[i];
	calc();
	for (i=1; i<=n; i++) x[i]=z[i];
	calc();
	printf("%lld\n",sol);
}