McProgres

Time limit: 1s Memory limit: 256MB Input: Output:

Cerință

Se dă nn, un șir aa de nn numere naturale și qq întrebări de forma:

  • 1 x poz1 \ \text{x} \ \text{poz}: Elementul apoza_{poz} devine xx.
  • 2 l r2 \ \text{l} \ \text{r}: Ar fi subsecvența [l,r][l, r] o progresie aritmetică, dacă aceasta ar fi sortată crescător?

Un șir bb de mm elemente este o progresie aritmetică dacă există un număr real strict pozitiv\bold{real \ strict \ pozitiv} cc, astfel încât bi=bi1+cb_i=b_{i-1}+c, 1<im1<i \leq m.

Date de intrare

Pe prima linie se vor afla nn și qq. Pe a doua linie se va afla șirul aa, iar pe următoarele qq linii se vor afla întrebările.

Date de ieșire

Pe următoarele linii se vor afișa răspunsurile la întrebările de tipul 22.

Restricții și precizări

  • 1n200 0001 \leq n \leq 200 \ 000;
  • 1q100 0001 \leq q \leq 100 \ 000;
  • 1ai,x1091 \leq a_i, x \leq 10^9;
  • 1poz,l,rn1 \leq poz, l, r \leq n, lrl \leq r;
  • Notă! La o întrebare de tipul 22 se sortează subsecvența, însă această modificare nu este permanentă (după întrebare se revine la ce era înainte).
# Punctaj Restricții
1 21 n,q1 000n, q \leq 1 \ 000
2 42 Există doar întrebări de tipul 2
3 7 ai1 000 000,x1 000 000a_i \leq 1 \ 000 \ 000, x \leq 1 \ 000 \ 000 pentru toate întrebările de tip 1
4 30 Fără alte restricții

Exemplul 1

stdin

9 10
3 6 9 12 15 7 5 3 1
2 1 5
2 6 9
2 3 5
2 2 4
2 1 6
1 18 6
2 1 6
2 7 9
1 10 1 
2 1 5

stdout

DA
DA
DA
DA
NU
DA
DA
NU

Explicație

La prima întrebare, subsecvența este deja crescătoare și este progresie aritmetică.
La a doua întrebare, dacă sortăm subsecvența, aceasta devine 3 5 73 \ 5 \ 7, care este o progresie aritmetică.
La a cincea întrebare, dacă sortăm subsecvența, aceasta devine 3 6 7 9 12 153 \ 6 \ 7 \ 9 \ 12 \ 15, care nu este o progresie aritmetică, dar dupa a șasea întrebare, unde a6a_6 devine 1818, subsecvența în ordine crescătoare este 3 6 9 12 15 183 \ 6 \ 9 \ 12 \ 15 \ 18, care este o progresie aritmetică.

Log in or sign up to be able to send submissions!