luogu#P10463. Interval GCD

Interval GCD

题目描述

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

  1. C l r d,表示把 al,al+1,,ara_l,a_{l+1},…,a_r 都加上 dd
  2. Q l r,表示询问 al,al+1,,ara_l,a_{l+1},…,a_r 的最大公约数(gcd\gcd)。

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

输入格式

第一行两个整数 N,MN,M

第二行 NN 个整数,分别表示 a1,a2,,aNa_1,a_2,\dots,a_N

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

输出格式

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

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

提示

对于 100%100\% 的测试数据,N5×105N \le 5\times10^5M105M \le 10^51ai10181 \le a_i \le 10^{18}d1018|d| \le 10^{18},保证数据在计算过程中不会超过 long long 范围。