Mai intai trebuie sa te autentifici.
Cod sursa(job #462905)
Utilizator | Data | 14 iunie 2010 10:51:04 | |
---|---|---|---|
Problema | Inundatii | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.73 kb |
# include <cstdio>
typedef long long ll;
const char FIN[] = "inundatii.in", FOU[] = "inundatii.out";
const int MAX_N = 50005;
int N;
int X[MAX_N], Y[MAX_N], Z[MAX_N];
long long sol;
ll solve ( int XYZ[] )
{
ll aux = N >> 1, sol = 0;
for (int i = 1; i <= N; ++i)
sol += i <= aux ? XYZ[i] - XYZ[aux] + aux - i : XYZ[aux] - XYZ[i] + i - aux ;
return sol;
}
int main()
{
freopen ( FIN, "r", stdin ) ;
freopen ( FOU, "w", stdout ) ;
scanf("%d", &N);
#if N>200
#define ll long long
#else
#define ll int
#endif
for (int i = 1; i <= N; ++i)
scanf("%d %d %d", X+i, Y+i, Z+i);
printf("%lld\n", ( ll ) solve ( X ) + solve ( Y ) + solve ( Z ) );
return 0;
}