Pagini recente » Cod sursa (job #2397322) | Cod sursa (job #1913177) | Cod sursa (job #404063) | Cod sursa (job #45959) | Cod sursa (job #2538782)
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 500005;
int x[MAXN], y[MAXN], z[MAXN];
long long sx[MAXN], sy[MAXN], sz[MAXN];
long long cL(int i) {
return -1LL * (i - 1) * (x[i] + y[i] + z[i]) + sx[i - 1] + sy[i - 1] + sz[i - 1] + 3LL * (i - 1) * i / 2;
}
long long cR(int i, int n) {
return -(sx[n] - sx[i] + sy[n] - sy[i] + sz[n] - sz[i]) + 1LL * (n - i) * (x[i] + y[i] + z[i]) + 3LL * (n - i) * (n - i + 1) / 2;
}
int main() {
freopen("inundatii.in", "r", stdin);
freopen("inundatii.out", "w", stdout);
int n;
scanf("%d", &n);
for (int i = 1; i <= n; ++i) {
scanf("%d%d%d", &x[i], &y[i], &z[i]);
sx[i] = sx[i - 1] + x[i];
sy[i] = sy[i - 1] + y[i];
sz[i] = sz[i - 1] + z[i];
}
long long ans = (1LL << 60);
for (int i = 1; i <= n; ++i) {
ans = min(ans, cL(i) + cR(i, n));
}
printf("%lld\n", ans);
return 0;
}