SP7488 LGLOVE - LCM GCD Love
题目描述
有两个有 $n$ 个数的数列 $A$ 和 $B,B_i=\text{lcm}(1,2,3,...,A_i)$,
当 $A_i=0$ 时,$B_i=0$。
给出一个数 $m$ ,表示 $m$ 组询问或操作。
当输入为 $0\;i\;j\;p$ 时,表示将 $A_i$ 到 $A_j$ 内所有数加上 $p(-3\times 10^5\le p\le 3\times 10^5)$。
当输入为 $1\;i\;j$ 时,表示求出 $B_i$ 到 $B_j$ 内的所有数的 $\text{lcm}$。
当输入为 $2\;i\;j$ 时,表示求出 $B_i$ 到 $B_j$ 内的所有数的 $\gcd$。
输入格式
第一行两个数个数 $n$ 和 $m$,表示 $A$ 数组和 $B$ 数组的长度和询问的次数。
第二行 $n$ 个数,表示每个数 $A_i$。
后面 $m$ 行,表示 $m$ 次询问和操作。
输出格式
输出所有 $1\;2$ 操作的答案对 $10^{9}+7$ 取模的结果。
说明/提示
$n\le 10^5$。
$m\le 35000$。
$0\le A_i\le 3\times 10^5$。