fork download
  1. def count_inversions(a):
  2. inv = 0
  3. n = len(a)
  4. for i in range(n):
  5. for j in range(i + 1, n):
  6. if a[i] > a[j]:
  7. inv += 1
  8. return inv
  9.  
  10. def solve():
  11. n = int(input())
  12. p = list(map(int, input().split()))
  13.  
  14. min_inv = float('inf')
  15.  
  16. for mask in range(1 << n):
  17. a = [0] * n
  18. for i in range(n):
  19. if (mask >> i) & 1:
  20. a[i] = 2 * n - p[i]
  21. else:
  22. a[i] = p[i]
  23. inv = count_inversions(a)
  24. min_inv = min(min_inv, inv)
  25.  
  26. print(min_inv)
  27.  
  28. t = int(input())
  29. for _ in range(t):
  30. solve()
  31.  
Success #stdin #stdout 0.08s 14044KB
stdin
5
2
2 1
3
2 1 3
4
4 3 2 1
5
2 3 1 5 4
6
2 3 4 1 5 6
stdout
0
1
0
2
2