Cod sursa(job #257802)

Utilizator mihaipoascaPoasca Mihai mihaipoasca Data 13 februarie 2009 23:37:29
Problema Inundatii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.98 kb
#include<stdio.h>

FILE *fin=fopen("inundatii.in","r"),
    *fout=fopen("inundatii.out","w");

int N,x[50005],y[50005],z[50005];

int main(){
    fscanf(fin,"%d",&N);
    for(int i=1;i<=N;i++){
        fscanf(fin,"%d %d %d",&x[i],&y[i],&z[i]);
    }


    long long medx=0,medy=0,medz=0,rez=0;
    for(int i=1;i<=N;i++){
        medx+=(long long)x[i];
        medz+=(long long)z[i];
        medy+=(long long)y[i];
    }
    medx/=N;
    medy/=N;
    medz/=N;
    for(int i=1;i<=N;i++){
        if(x[i]-medx-i > 0)
            rez+=(long long)x[i]-medx-i;
        else
            rez-=(long long)x[i]-medx-i;


        if(y[i]-medy-i > 0)
            rez+=(long long)y[i]-medy-i;
        else
            rez-=(long long)y[i]-medy-i;

        if(z[i]-medz-i > 0)
            rez+=(long long)z[i]-medz-i;
        else
            rez-=(long long)z[i]-medz-i;


    }

    fprintf(fout,"%lld\n",rez);
    fclose(fin);
    fclose(fout);
    return 0;


}