#include using namespace std; const long long INF = 1000000000000000; int main(){ int N, K; cin >> N >> K; vector A(N); for (int i = 0; i < N; i++){ cin >> A[i]; } if (K <= N - K){ long long ans1 = 0, ans2 = 0; for (int i = 0; i < K; i++){ ans1 += A[i] - A[0]; ans2 += A[N - 1] - A[N - 1 - i]; } for (int i = K; i < N; i++){ ans1 -= A[i] - A[0]; ans2 -= A[N - 1] - A[N - 1 - i]; } cout << min(ans1, ans2) << endl; } else { vector S(N + 1); S[0] = 0; for (int i = 0; i < N; i++){ S[i + 1] = S[i] + A[i]; } long long ans = INF; for (int i = 0; i <= N - K; i++){ long long p = (2 * K - N) / 2 + i * 2; long long x = A[p]; long long tmp = 0; tmp += S[i] - S[0]; tmp -= S[p] - S[i]; tmp += S[i + K] - S[p]; tmp -= S[N] - S[i + K]; tmp += (N + p * 2 - i * 4 - K * 2) * x; ans = min(ans, tmp); } cout << ans << endl; } }