#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[k]; for(int i = 0; n > i; i++){ int t;cin>>t; A[i%k].push_back(t); } for(int i = 0; k > i; i++){ Bsort(A[i].begin(),A[i].end()); } int nw = -1; for(int i = 0; n > i; i++){ for(int j = 0; k > j; j++){ if(A[j].empty())break; if(!A[j][i])break; if(nw > A[j][i]){ cout << -1 << endl; return 0; } nw = A[j][i]; } } cout << ans << endl; }