Найближчий не менший елемент


Submit solution

Points: 100
Time limit: 1.0s
Memory limit: 256M

Author:
Problem type
Allowed languages
C++

Дано множину цілих чисел. Для кожного запиту виду \(FIND\: x\) знайдіть найменший елемент множини, який не менший за x. Якщо такого елемента не існує, виведіть \(-1\).

Input Specification

Перший рядок містить два числа \(n\) та \(q\), де \(n\) --- кількість елементів; \(q\) --- кількість запитів. Другий рядок містить \(n\) цілих чисел \(a_1, a_2, \ldots, a_n\), де \(a_i\) --- елементи. Другий рядок містить \(q\) запитів \(b_1, b_2, \ldots, b_n\), де \(b_i\) --- запити вигляду \(FIND\: x\)(x --- ціле число). \(\\1 \leq n \leq 2 \cdot 10^5\\\) \(1 \leq q \leq 2 \cdot 10^5\\\) \(-10^9 \leq a_i \leq 10^9\\\) \(-10^9 \leq x \leq 10^9\\\)

Output Specification

Для кожного запиту виведіть: \begin{itemize} \item найменший елемент \(\ge x\); \item або \(-1\), якщо такого немає. \end{itemize}

Sample Input 1

5 4
1 3 5 7 9
FIND -100
FIND 25
FIND 121
FIND 4

Sample Output 1

1
-1
-1
5

Sample Input 2

7 5
45 123 -125 23 0 1 90
FIND -125
FIND 34
FIND 21
FIND 1
FIND -1

Sample Output 2

-125
45
23
1
0

Comments

There are no comments at the moment.