Magenta Potion
题目描述
给定一个长为 $n$ 的整数序列 $a$,其中所有数的绝对值均大于等于 $2$。有 $q$ 次操作,格式如下:
$\texttt{1 i k}$,表示将 $a_i$ 修改为 $k$。保证 $k $ 的绝对值大于等于 $2$。
$\texttt{2 l r}$,考虑 $[l,r]$ 的子区间(包括本身)中乘积最大的的区间乘积 $M$。如果 $M>2^{30}$,输出 `Too large`,否则输出 $M$。特别地,空区间的元素乘积定义为 $1$。
输入输出格式
输入格式
第一行两个正整数表示 $n,q$。
第二行输入 $n$ 个**整数**表示 $a_i$。
接下来 $q$ 行,每行三个整数表示一次询问,格式见上。
输出格式
对于每次 $\tt2$ 操作输出一行表示询问的答案。
输入输出样例
输入样例 #1
5 7
2 2 3 4 5
2 1 5
1 3 -3
2 1 5
2 3 3
1 1 100000
1 2 100000
2 1 2
输出样例 #1
240
20
1
Too large
说明
对于所有的数据,$2\le |a_i|,|k| \le 10^9$,$1 \le n,q \le 2\times 10^5$,$1 \le l \le r \le n$。
$$
\def{\arraystretch}{1.5}
\begin{array}{c|c|c}\hline
\textbf{测试点编号}&\bm{~~~~~~~~n,q\le~~~~~~~~}&~~~~\textbf{特殊限制}~~~~\cr\hline
\textsf1\sim \sf2 & 10& \cr\hline
\sf3\sim 6 & 100& \cr\hline
\sf7\sim 10 & 5 \times 10^3&\cr\hline
\sf 11\sim 13 & &\sf A\cr\hline
\sf14\sim 16 & & \sf B\cr\hline
\sf17\sim 20 & &\cr\hline
\end{array}
$$
$\textsf A$:保证 $a_i,k \ge 2$。
$\textsf B$:保证对于每一组询问,对应的 $r-l \ge 100$。