#include <bits/stdc++.h>
using namespace std;
int n, x;
long long v[100005];
inline int dist(int a, int b) {
  if (a <= b) return b - a;
  return b + n - a;
}
int main(void) {
  scanf("%d%d", &n, &x);
  int mn = 0;
  for (int i = 0; i < n; i++) {
    scanf("%I64d", v + i);
    if (v[mn] > v[i] || (v[mn] == v[i] && dist(i, x - 1) < dist(mn, x - 1)))
      mn = i;
  }
  long long q = v[mn];
  for (int i = 0; i < n; i++) v[i] -= q;
  v[mn] = q * n;
  int d = dist(mn, x - 1);
  for (int i = 1; i <= d; i++) {
    v[(mn + i) % n]--, v[mn]++;
  }
  for (int i = 0; i < n; i++) printf("%I64d ", v[i]);
  return 0;
}
