Codeforces Round 138 (Div. 2) |
---|
Закончено |
Задан массив a, состоящий из n целых чисел: a1, a2, ..., an. Требуется найти минимальный по включению отрезок [l, r] (1 ≤ l ≤ r ≤ n) такой, что среди чисел al, al + 1, ..., ar ровно k различных чисел.
Отрезок [l, r] (1 ≤ l ≤ r ≤ n; l, r — целые) длины m = r - l + 1, удовлетворяющий заданному свойству, называется минимальным по включению, если не существует удовлетворяющего этому свойству отрезка [x, y] длины меньшей m такого, что 1 ≤ l ≤ x ≤ y ≤ r ≤ n. Обратите внимание, что отрезок [l, r] не обязан быть минимальным по длине среди всех отрезков удовлетворяющих заданному свойству.
В первой строке через пробел записаны два целых числа: n и k (1 ≤ n, k ≤ 105). Во второй строке через пробел записаны n целых чисел a1, a2, ..., an — элементы массива a (1 ≤ ai ≤ 105).
Выведите через пробел пару целых чисел l и r (1 ≤ l ≤ r ≤ n) такую, что отрезок [l, r] является ответом на задачу. Если искомого отрезка не существует, выведите «-1 -1» без кавычек. Если правильных ответов несколько, выведите любой.
4 2
1 2 2 3
1 2
8 3
1 1 2 2 3 3 4 5
2 5
7 4
4 7 7 4 7 4 7
-1 -1
В первом примере среди чисел a1 и a2 ровно два различных.
Во втором примере отрезок [2, 5] является минимальным по включению отрезком с тремя разными числами, но не является минимальным по длине среди таких отрезков.
В третьем примере нет ни одного отрезка с четырьмя разными числами.
Название |
---|