Вам дан массив из $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$.
Вам нужно выполнить $$$q$$$ операций. В $$$i$$$-й операции у вас есть символ $$$s_i$$$, который равен либо «<», либо «>», и число $$$x_i$$$.
Вы создаете новый массив $$$b$$$ такой, что $$$b_j = -a_j$$$, если $$$a_j s_i x_i$$$ и $$$b_j = a_j$$$ в противном случае (то есть, если $$$s_i$$$ равен «>», то все знаки в $$$a_j > x_i$$$ поменяются). После выполнения всех этих замен значения чисел в массиве $$$a$$$ меняются на значения в $$$b$$$.
Вы хотите знать, как выглядит ваш массив после выполнения всех операций.
Первая строка содержит два целых числа $$$n,q$$$ ($$$1 \leq n,q \leq 10^5$$$) — количество чисел и количество запросов.
Вторая строка содержит $$$n$$$ целых чисел $$$a_1, a_2, \ldots, a_n$$$ ($$$-10^5 \leq a_i \leq 10^5$$$) — числа.
Каждая из следующих $$$q$$$ строк содержит символ и число $$$s_i, x_i$$$. ($$$s_i \in \{<, >\}, -10^5 \leq x_i \leq 10^5$$$) – запрос.
Выведите $$$n$$$ чисел $$$c_1, c_2, \ldots, c_n$$$ — числа массива после выполнений всех операций.
11 3 -5 -4 -3 -2 -1 0 1 2 3 4 5 > 2 > -4 < 5
5 4 -3 -2 -1 0 1 2 -3 4 5
5 5 0 1 -2 -1 2 < -2 < -1 < 0 < 1 < 2
0 -1 2 -1 2
В первом примере массив изменяется следующим способом:
Название |
---|