MQUERY

Time Limit:
5 Sec
Memory Limit:
250Mb
Enviados:
671
Resuelto:
169

Descripción

Dado un array $A$ con $N$ elementos indexados de 1 a N, se le pide realizar 2 tipos de operaciones sobre este array, las operaciones son de la forma:

$T$ $x$ $y$

donde:

Si T es igual a 1, se pide calcular el signo del numero resultante despues de hacer $A[x] * A[x + 1]  * A[x + 2] *...* A[y]$ e imprimirlo por pantalla.

Si T es igual a 2 se pide actualizar el valor de A[x] por y.

Entrada

En la primera linea de la entrada $N$ y $Q$ $(1 <= N, Q <= 100000)$ donde $N$ es el tamaño del array $A$ y $Q$ es el numero de operaciones a realizar sobre el array $A$.
La siguiente linea contiene $N$ numeros enteros que representan los elementos de array.
En cada una de las $Q$ siguientes lineas vienen 3 numeros enteros $T$, $x$, y $y$, si $T$ es igual a 1 se asegura que $1 <= x <= y <= N$ y si $T$ es igual a 2 se asegura que $1 <= x <= N$ y $-2*10^9 <= y <= 2*10^9$.

Salida

Por cada operacion de tipo 1 imprimir en una linea:

  • $-1$ si el signo de la mutiplicación es negativa
  • $0$ si el signo de la mutiplicación es cero
  • $1$ si el signo de la multiplicación es positiva

Ejemplo Entrada

Copy icon
10 8
1 2 -1 -3 5 2 4 1 0 4
1 1 3
1 1 4
1 8 9
2 9 -100
1 8 9
2 8 -131
1 8 9
1 1 10

Ejemplo Salida

Copy icon
-1
1
0
-1
1
1

Ayuda