1391 花神游历各国 | OJ题库 | CODE STUDY
CODE STUDY
Programming Practice Platform

欢迎回来

1391

花神游历各国

Easy 时间限制 1000 ms 内存限制 262144 KB
线段树

题目详情

返回题库

题目描述

花神喜欢步行游历各国,顺便虐爆各地竞赛。花神有一条游览路线,它是线型的,也就是说,所有游历国家呈一条线的形状排列,花神对每个国家都有一个喜欢程度(当然花神并不一定喜欢所有国家)。

每一次旅行中,花神会选择一条旅游路线,它在那一串国家中是连续的一段,这次旅行带来的开心值是这些国家的喜欢度的总和,当然花神对这些国家的喜欢程序并不是恒定的,有时会突然对某些国家产生反感,使他对这些国家的喜欢度 $ {\delta} $变为 $ \sqrt {\delta} $(可能是花神虐爆了那些国家的 OI,从而感到乏味)。

现在给出花神每次的旅行路线,以及开心度的变化,请求出花神每次旅行的开心值。

输入描述

δ第一行是一个整数N,表示有N个国家;

第二行有N个空格隔开的整数,表示每个国家的初始喜欢度$δ_i$;

第三行是一个整数M,表示有M条信息要处理;

第四行到最后,每行三个整数x,l,r ,当x=1 时询问游历国家l到r的开心值总和$ \sum_{i=l}^r {\delta}_i $,就是 ,当x=2时国家 l 到 r 中每个国家的喜欢度 $ {\delta}_i $变为 $ \sqrt{{\delta}_i}$。


数据范围与提示:

对于全部数据,$1 \leq n \leq 10^5,1 \leq m \leq 2 \times 10^5,1 \leq l \leq r \leq n,0 \leq {\delta}_i\leq10^9 $。

注:建议使用sqrt函数,且向下取整。

输出描述

每次 x=1  时,每行一个整数。表示这次旅行的开心度。

测试样例

样例支持多行内容展示
样例1
输入
4
1 100 5 5
5
1 1 2
2 1 2
1 1 2
2 2 3
1 1 4
输出
101
11
11
editor.py

提交前会先自动运行样例。只有样例全部通过,才会进入后端正式判题。