Cod sursa(job #1813784)

Utilizator KusikaPasa Corneliu Kusika Data 23 noiembrie 2016 11:58:33
Problema Inundatii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <bits/stdc++.h>

using namespace std;

typedef pair < int, pair<int, int> > viii;

#define X first
#define Y second.first
#define Z second.second

viii a[50050];

int main()
{
    ifstream cin("inundatii.in");
    ofstream cout("inundatii.out");
    int n, ans = 0;
    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> a[i].X >> a[i].Y >> a[i].Z;

    int x = a[n/2].X, y = a[n/2].Y, z = a[n/2].Z;
    for (int i = 0; i < n; i++) {
        ans += abs(a[i].X - x) + abs(a[i].Y - y) + abs(a[i].Z - z);
        x++, y++, z++;
    }
    if (n%2 == 0) {
        int ans2 = 0;
        x = a[n/2-1].X, y = a[n/2-1].Y, z = a[n/2-1].Z;
        for (int i = 0; i < n; i++) {
            ans2 += abs(a[i].X - x) + abs(a[i].Y - y) + abs(a[i].Z - z);
            x++, y++, z++;
        }
        ans = max(ans, ans2);
    }
    cout << ans;
}