#!/usr/bin/env pypy3

IMPOSSIBLE = -1


def in_place_swap(xs, i, k):
    xs[i], xs[i + k] = xs[i + k], xs[i]


def is_meaningful_swap(xs, i, k):
    return xs[i] >= xs[i + k]


def min_num_of_operations(n, k, xs):
    counter = 0
    while True:
        for i in range(len(xs) - k):
            if is_meaningful_swap(xs, i, k):
                in_place_swap(xs, i, k)
                counter += 1
                break
        else:
            if sorted(xs) == list(xs):
                return counter
            else:
                return IMPOSSIBLE


def main():
    n, k = map(int, input().split())
    xs = list(map(int, input().split()))
    print(min_num_of_operations(n, k, xs))


if __name__ == '__main__':
    main()