#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define rep(i,j) REP((i), 0, (j)) #define REP(i,j,k) for(int i=(j);(i)<(k);++i) #define BW(a,x,b) ((a)<=(x)&&(x)<=(b)) #define ALL(v) (v).begin(), (v).end() #define LENGTHOF(x) (sizeof(x) / sizeof(*(x))) #define AFILL(a, b) fill((int*)a, (int*)(a + LENGTHOF(a)), b) #define SQ(x) ((x)*(x)) #define Mod(x, mod) (((x)+(mod)%(mod)) #define MP make_pair #define PB push_back #define Fi first #define Se second #define INF (1<<29) #define EPS 1e-10 #define MOD 1000000007 typedef pair pi; typedef pair pii; typedef vector vi; typedef queue qi; typedef long long ll; int N, K; int a[1024]; int main() { cin >> N >> K; rep(i,N) cin >> a[i]; int ret = 0; for(int i=0;i a[j+K]){ // cout << j << " " << j+K << endl; ret++; swap(a[j], a[j+K]); } } } for(int i=0;i= a[i+1]){ cout << -1 << endl; return 0; } } cout << ret << endl; return 0; }