func_code_string: #include <bits/stdc++.h>   using namespace std;   long long f[(1 << 20) + 10], num[21], sum[21][21];   int main() {     int n, m = 20;     scanf( %d , &n);     for (int i = 1, x; i <= n; i++) {       scanf( %d , &x);       x--, num[x]++;       for (int j = 0; j < 20; j++) {         sum[j][x] += num[j];       }     }     memset(f, 0x3f, sizeof f);     f[0] = 0;     for (int i = 1; i < 1 << m; i++) {       for (int j = 0; j < m; j++) {         if (i >> j & 1) {           long long cur = 0;           for (int k = 0; k < m; k++) {             if ((i >> k & 1) && k != j) {               cur += sum[k][j];             }           }           f[i] = min(f[i], f[i ^ (1 << j)] + cur);         }       }     }     printf( %lld n , f[(1 << m) - 1]);     return 0;   }   