#include #include #include #include #include using namespace std; vector numbers; long long findMinMoves(vector& numbers){ long long minResult = 0; for (int ind = 0; ind < numbers.size(); ind++){ minResult += numbers.size()*numbers[ind]; } int count = numbers.size(); for (int central = 0; central < count; central++){ long long result = 0; for (int cur = 0; cur < count; cur++){ result += numbers[cur] * min(abs(central - cur), min(central, cur) + count - max(central, cur)); } minResult = min(result, minResult); } return minResult; } int main(){ freopen("sortmach.in", "r", stdin); freopen("sortmach.out", "w", stdout); int countN, x; scanf("%d", &countN); for (int ind = 0; ind < countN; ind++){ scanf("%d", &x); numbers.push_back(x); } int result = findMinMoves(numbers); cout << result << endl; return 0; }