Problem5746--小阳的贝壳

5746: 小阳的贝壳

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

小阳手中一共有 $n$ 个贝壳,每个贝壳都有颜色,且初始第 $i$ 个贝壳的颜色为 $col_i$。现在小阳有 $3$ 种操作:
1 l r x:给 $[l,\ r]$ 区间里所有贝壳的颜色值加上 $x$。
2 l r:询问 $[l,\ r]$ 区间里所有相邻贝壳颜色值的差(取绝对值)的最大值(若 $l = r$ 输出 $0$)。
3 l r :询问 $[l,\ r]$ 区间里所有贝壳颜色值的最大公约数。

Input

第一行输入两个正整数 $n,\ m$,分别表示贝壳个数和操作个数。
第二行输入 $n$ 个数 $col_i$,表示每个贝壳的初始颜色。
第三到第 $m+2$ 行,每行第一个数为 $opt$,表示操作编号。接下来的输入的变量与操作编号对应。

Output

共 $m$ 行,对于每个询问(操作 $2$ 和操作 $3$)输出对应的结果。

Constraints

$1≤n,\ m≤10^5,\ 1≤col_i,\ x≤10^3,\ 1≤opt≤3,\ 1≤l≤r≤n$

Sample 1 Input

5 6
2 2 3 3 3
1 2 3 3
2 2 4
3 3 5
1 1 4 2
3 2 3
2 3 5

Sample 1 Output

3
3
1
3

HINT

题目来源:牛客网

Source/Category

数据结构 2.9.线段树