A. Шушанчики и последовательность
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Однажды шушанчики нашли последовательность из n целых чисел, записанную на доске. Шушанчики умеют выполнять с ней одну операцию, которая состоит из двух шагов:

  1. Дописать в конец последовательности число, равное k-му от начала числу в текущей последовательности;
  2. Стереть первое число текущей последовательности.

Шушанчиков очень заинтересовал вопрос: через сколько операций все числа на доске станут одинаковыми, и станут ли они одинаковыми когда-нибудь вообще.

Входные данные

В первой строке записаны два целых числа через пробел n и k (1 ≤ k ≤ n ≤ 105).

Во второй строке записаны n целых чисел через пробел: a1, a2, ..., an (1 ≤ ai ≤ 105) — найденная последовательность.

Выходные данные

Выведите минимальное число операций, требуемых, чтобы все числа на доске стали одинаковыми, или -1, если этого невозможно добиться.

Примеры
Входные данные
3 2
3 1 1
Выходные данные
1
Входные данные
3 1
3 1 1
Выходные данные
-1
Примечание

В первом тестовом примере после первой операции на доске будет записана последовательность [1, 1, 1]. Значит одной операции достаточно, чтобы все числа стали одинаковые. Таким образом ответ равен единице.

Во втором тестовом примере последовательность никогда не будет состоять из одинаковых чисел. В ней всегда будут содержаться как минимум два различных числа 3 и 1. Таким образом ответ равен -1.