SP2713 GSS4 - Can you answer these queries IV

题目描述

给定一个长度为 $n \ (n \le 10^5)$ 的正整数序列 $a$。保证序列中所有数的和不超过 $10^{18}$。$m \ (m \le 10^5)$ 次操作,每次操作如下: - 操作 A:给定 $x,y$,对于区间 $[x,y]$ 内的每个数 $a_i$,将其修改为 $\lfloor\sqrt{a_i}\rfloor$。 - 操作 B:给定 $x,y$,查询区间 $[x,y]$ 中所有数的和。

输入格式

输入有多组数据,请依次处理。输入文件以 EOF 结尾。 对于每组数据: 第一行一个正整数 $n$。 接下来一行 $n$ 个正整数,表示序列 $a$。 第三行一个正整数 $m$。 接下来 $m$ 行,每行一个查询,格式为 `i x y`。若 $i=0$,则此次为修改操作,否则为查询操作。 :::info[原题面中缺少的信息]{open} **数据中可能出现 $x>y$ 的情况,遇到这种情况请交换 $x,y$。** 保证数据组数不超过 $23$,所有数据中 $n,m$ 的总和不超过 $4 \times 10^5$。 :::

输出格式

对于每组数据: 第一行输出该组数据的编号(从 $1$ 开始)。接下来对于每组询问,输出一个正整数,表示该组询问的答案。 每组数据之后需要输出一个空行。 更多细节详见样例输出。