Cod sursa(job #478889)

Utilizator andrei.dAndrei Diaconeasa andrei.d Data 20 august 2010 23:28:10
Problema Inundatii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <cstdio>

#define file_in "inundatii.in"
#define file_out "inundatii.out"

#define nmax 50501

int n;
int x[nmax];
int y[nmax];
int z[nmax];

void citire()
{
	freopen(file_in,"r",stdin);
	freopen(file_out,"w",stdout);
	
	scanf("%d", &n);
	for (int i=0;i<n;++i)
		 scanf("%d %d %d", &x[i], &y[i], &z[i]);
}

inline long long abs(long long a) { return a>=0?a:-a; }

long long solve(int a[])
{
   int mediana=a[n/2]-n/2;
   long long sol=0;
   for (int i=0;i<n;++i)
	    sol+=abs(a[i]-mediana-i);
   return sol;
}

int main()
{
	citire();
	printf("%lld\n", solve(x)+solve(y)+solve(z));
	
	fclose(stdin);
	fclose(stdout);
	
	return 0;
	
}