C. Найти пару
ограничение по времени на тест
1 second
ограничение по памяти на тест
256 megabytes
ввод
stdin
вывод
stdout

Перед Вами очередная задача на массивы. Рассмотрим произвольную последовательность из n (не обязательно различных) целых чисел a1, a2, ..., an. Нас будут интересовать всевозможные пары чисел (ai, aj), (1 ≤ i, j ≤ n). Другими словами, рассмотрим все n2 пар чисел, выбранных из заданного массива.

Например, в последовательности a = {3, 1, 5} существует 9 пар чисел: (3, 3), (3, 1), (3, 5), (1, 3), (1, 1), (1, 5), (5, 3), (5, 1), (5, 5).

Отсортируем лексикографически все полученные пары по неубыванию. Напомним, что пара (p1, q1) лексикографически меньше пары (p2, q2) тогда и только тогда, когда либо p1 < p2 либо p1 = p2 и q1 < q2.

Тогда отсортированная последовательность, упомянутая выше, будет выглядеть следующим образом: (1, 1), (1, 3), (1, 5), (3, 1), (3, 3), (3, 5), (5, 1), (5, 3), (5, 5)

Пронумеруем пары в отсортированном списке от 1 до n2. Ваша задача формулируется следующим образом: нужно найти k-ую пару в упорядоченном списке всевозможных пар заданного вам массива.

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

В первой строке заданы два целых числа n и k (1 ≤ n ≤ 105, 1 ≤ k ≤ n2). Во второй строке задан массив из n целых чисел a1, a2, ..., an ( - 109 ≤ ai ≤ 109). Числа в массиве могут совпадать. Все числа разделены пробелами.

Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-х битовых чисел на С++, вместо него рекомендуется использовать потоки cin, cout, а также спецификатор %I64d.

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

В единственной строке выведите два числа — искомую k-ую пару.

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

В первом примере отсортированная последовательность для заданного массива выглядит следующим образом: (1, 1), (1, 2), (2, 1), (2, 2). 4-ой среди них является пара (2, 2).

Отсортированная последовательность для массива из второго примера приведена в условии. 2-ой парой в ней является (1, 3).