func_code_string: #include <bits/stdc++.h>   using namespace std;   int x[10], p[50], dp[200][200];   int pp[50], q[50];   int n, k;   int maxi;   double suma;   int nm = 0;   void check(int a, int b, int c, int d) {     nm++;     for (int i = 1; i <= n; i++) p[i] = x[i];     int br = q[a];     for (int j = pp[a]; j <= ((q[a] + pp[a]) >> 1); j++) {       int pom = p[j];       p[j] = p[br];       p[br] = pom;       br--;     }     if (b > 0) {       int br = q[b];       for (int j = pp[b]; j <= ((q[b] + pp[b]) >> 1); j++) {         int pom = p[j];         p[j] = p[br];         p[br] = pom;         br--;       }     }     if (c > 0) {       int br = q[c];       for (int j = pp[c]; j <= ((q[c] + pp[c]) >> 1); j++) {         int pom = p[j];         p[j] = p[br];         p[br] = pom;         br--;       }     }     if (d > 0) {       int br = q[d];       for (int j = pp[d]; j <= ((q[d] + pp[d]) >> 1); j++) {         int pom = p[j];         p[j] = p[br];         p[br] = pom;         br--;       }     }     int cnt = 0;     for (int j = 1; j <= n; j++)       for (int f = (j + 1); f <= n; f++)         if (p[j] > p[f]) cnt++;     suma = suma + cnt;   }   int main() {     srand(0);     scanf( %d%d , &n, &k);     suma = 0.0;     maxi = n * (n + 1) / 2;     int pom = maxi;     for (int i = 2; i <= 4; i++) {       if (k < i) break;       pom = pom * maxi;     }     maxi = pom;     for (int i = 1; i <= n; i++) scanf( %d , &x[i]);     int cnt = 0;     for (int i = 1; i <= n; i++)       for (int j = i; j <= n; j++)         if (x[i] > x[j]) cnt++;     int i, j, i1, i2, j1, j2;     int br = 0;     for (i = 1; i <= n; i++)       for (j = i; j <= n; j++) {         pp[++br] = i;         q[br] = j;       }     int ppp = 0;     for (i = 1; i <= br; i++) {       if (k == 1) {         check(i, 0, 0, 0);         continue;       }       for (j = 1; j <= br; j++) {         if (k == 2) {           check(i, j, 0, 0);           continue;         }         for (i1 = 1; i1 <= br; i1++) {           if (k == 3) {             check(i, j, i1, 0);             continue;           }           for (i2 = 1; i2 <= br; i2++) {             check(i, j, i1, i2);             ppp++;           }         }       }     }     suma = suma / maxi;     printf( %.11lf n , suma);   }   