Добуток на відрізку#4082

Добуток на відрізку

2 секунди
122,174 мегабайта
Дуже легка

Цілком нормально почуватись схвильовано й напружено напередодні програмістського змагання. Щоб розслабитись, ти зустрівся з кількома друзями й вирішив пограти в гру, щоб підтримувати гостроту розуму на наступний день. Спочатку друзі дадуть тобі послідовність із цілих чисел x_1, x_2, \ldots, x_n. Далі буде раундів; у кожному раунді друзі нададуть одну з команд, яка може бути такою:

- команда зміни, коли друзі хочуть змінити одне із значень у послідовності; або - команда добутку, коли друзі дають тобі два числа , і просять сказати, чи добуток x_i \times x_{i+1} \times \ldots \times x_{j-1} \times x_j є додатнім, від'ємним чи нулем.

Ти хочеш відповісти правильно на всі питання, тому вирішуєш скористатись своїми програмістськими навичками. На щастя, друзі дозволяють користуватися ноутбуком, щоб написати програму для допомоги в грі.

Вхідні дані

Кожен тестовий випадок описується кількома рядками. Перший рядок містить два цілих числа та (1 \leq n, k \leq 10^5), які означають відповідно кількість елементів у послідовності та кількість раундів гри.

Другий рядок містить цілих чисел x_i, які задають початкові значення послідовності (-100 \leq x_i \leq 100 для i = 1, 2, \ldots, n).

Кожен з наступних рядків містить опис команди і починається з великої літери, яка є або C, або P.

Якщо літера C, то рядок описує команду зміни, і після літери йдуть два числа і , що означає, що x_i треба присвоїти значення (1 \leq i \leq n, -100 \leq v \leq 100).

Якщо літера P, то рядок описує команду добутку, і після літери йдуть два числа і , що означає, що треба обчислити добуток від x_i до x_j включно (1 \leq i \leq j \leq n).

У кожному тестовому випадку є принаймні одна команда добутку.

Вихідні дані

Для кожного тестового випадку виведіть рядок, який представляє результат усіх команд добутку в цьому тесті. -ий символ рядка відповідає результату -ої команди добутку. Якщо результат додатній — символ має бути + (плюс); якщо від'ємний — символ має бути - (мінус); якщо нуль — символ має бути 0 (нуль).

Приклади

Приклад 1

Loading
Loading