Cod sursa(job #462904)

Utilizator SpiderManSimoiu Robert SpiderMan Data 14 iunie 2010 10:50:31
Problema Inundatii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 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;

int solve ( int XYZ[] )
{
    int 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("%d\n", solve ( X ) + solve ( Y ) + solve ( Z ) );
    return 0;
}