# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
109503 | 2019-05-06T18:23:37 Z | pamaj | Ideal city (IOI12_city) | C++14 | 0 ms | 0 KB |
#include <bits/stdc++.h> using namespace std; const int maxn = 1e5 + 10; int prefx[maxn], prefy[maxn]; int DistanceSum(int N, int *X, int *Y) { sort(X, X + N); sort(Y, Y + N); for(int i = 0; i < N; i++) { if(!i) prefx[i] = X[i], prefy[i] = Y[i]; else prefx[i] = X[i] + prefx[i - 1], prefy[i] = Y[i] + prefy[i - 1]; } int sum = 0; for(int i = 0; i < n - 1; i++) { sum += prefx[n] - prefx[i] - (n - i)*X[i]; sum += prefy[n] - prefy[i] - (n - i)*Y[i]; } return sum; }