#include <iostream>
#include <algorithm>
using namespace std;

int a[100000+10],b[100000+10],n,k,sw;

int  robotsort(int a[],int n,int k)
{
	int sw=0;
	bool flag=1;
	for(int i=0;flag;i++)
	{
		flag=0;
		for(int j=n-1;j-k>=i;j--)
		{
			if(a[j]<a[j-k])
			{
				swap(a[j],a[j-k]);
				flag=1;
				sw++;
			}
		}
	}
	return sw;
}
int main()
{
	cin>>n>>k;
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
		b[i]=a[i];
	}
	

	
	sw=robotsort(a,n,k);
	sort(b,b+n);
	
	for(int i=0;i<n;i++)if(a[i]!=b[i]){cout<<-1<<endl;return 0;}

	cout<<sw<<endl;
}