#include #include #include using namespace std; int ans = 0; void Bsort(vector::iterator f, vector::iterator l){ for(auto e = f; e != l; e++){ for(auto i = l-1; i != e; i--){ auto j = i; j--; if(*i < *j){ iter_swap(i,j); ans++; } } } } int main(){ int n,k;cin>>n>>k; vector A[min(n,k)]; for(int i = 0; n > i; i++){ int t;cin>>t; A[i%k].push_back(t); } for(int i = 0; min(n,k) > i; i++){ Bsort(A[i].begin(),A[i].end()); } vector B(n); for(int i = 0; n > i; i++){ B[i] = A[i%k][i/k]; } for(int i = 1; n > i; i++){ if(B[i-1] > B[i]){ cout << -1 << endl; return 0; } } cout << ans << endl; }