#include <bits/stdc++.h>
using namespace std;
const int T = 105;
int p[T];
long long ans;
int n, k;
int get() {
  int cur = 0;
  for (int i = 0; i < n; i++)
    for (int j = i + 1; j < n; j++)
      if (p[i] > p[j]) cur++;
  return cur;
}
void DFS(int step) {
  if (step == k) {
    ans += get();
    return;
  }
  for (int i = 0; i < n; i++)
    for (int j = i; j < n; j++) {
      for (int k = i; k <= j + i - k; k++) swap(p[k], p[j + i - k]);
      DFS(step + 1);
      for (int k = i; k <= j + i - k; k++) swap(p[k], p[j + i - k]);
    }
}
int main() {
  cin >> n >> k;
  for (int i = 0; i < n; i++) cin >> p[i];
  DFS(0);
  long long X = 1;
  int cur = 0;
  for (int i = 0; i < n; i++)
    for (int j = i; j < n; j++) cur++;
  for (int i = 0; i < k; i++) {
    X *= 1ll * cur;
  }
  printf("%.10f\n", 1.0 * ans / X);
}
