问题 CJ: 区间最大公约数

内存限制:128 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:25 通过:20

题目描述

给定一个长度为 N 的数列 A,以及 M 条指令,每条指令可能是以下两种之一:

  1. C l r d,表示把 A[l],A[l+1],…,A[r]] 都加上 d。
  2. Q l r,表示询问 A[l],A[l+1],…,A[r]的最大公约数(GCD)。

对于每个询问,输出一个整数表示答案。 

输入格式

第一行两个整数 N,M。

第二行 N个整数 A[i]。

接下来 M 行表示 M 条指令,每条指令的格式如题目描述所示。

输出格式

对于每个询问,输出一个整数表示答案。

每个答案占一行。

数据范围

N≤500000,M≤100000,
1≤A[i]≤1018,
|d|≤1018

输入样例:

5 5
1 3 5 7 9
Q 1 5
C 1 5 1
Q 1 5
C 3 3 6
Q 2 4

输出样例:

1
2
4
 

输入样例 复制

5 5
1 3 5 7 9
Q 1 5
C 1 5 1
Q 1 5
C 3 3 6
Q 2 4

输出样例 复制

1
2
4