P10463 Interval GCD

题目描述

给定一个长度为 $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_1,a_2,\dots,a_N$。 接下来 $M$ 行表示 $M$ 条指令,每条指令的格式如题目描述所示。

输出格式

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

说明/提示

对于 $100\%$ 的测试数据,$N \le 5\times10^5$,$M \le 10^5$,$1 \le a_i \le 10^{18}$,$|d| \le 10^{18}$,保证数据在计算过程中不会超过 long long 范围。