区间加区间 sin 和

题目描述

给出一个长度为 $n$ 的整数序列 $a_1,a_2,\ldots,a_n$,进行 $m$ 次操作,操作分为两类。 操作 $1$:给出 $l,r,v$,将 $a_l,a_{l+1},\ldots,a_r$ 分别加上 $v$。 操作 $2$:给出 $l,r$,询问 $\sum\limits_{i=l}^{r}\sin(a_i)$。

输入输出格式

输入格式


第一行一个整数 $n$。 接下来一行 $n$ 个整数表示 $a_1,a_2,\ldots,a_n$。 接下来一行一个整数 $m$。 接下来 $m$ 行,每行表示一个操作,操作 $1$ 表示为 `1 l r v`,操作 $2$ 表示为 `2 l r`。

输出格式


对每个操作 $2$,输出一行,表示答案,四舍五入保留一位小数。 保证答案的绝对值大于 $0.1$,且答案的准确值的小数点后第二位不是 $4$ 或 $5$。

输入输出样例

输入样例 #1

5
1 3 1 5 5
5
1 5 5 5
2 3 3
2 1 5
2 2 2
2 4 4

输出样例 #1

0.8
0.3
0.1
-1.0

说明

Idea:nzhtl1477,Solution:nzhtl1477,Code:ccz181078,Data:nzhtl1477 保证 $1\leq n,m,a_i,v\leq 2\times 10^5$,$1\leq l\leq r\leq n$。保证所有输入的数都是正整数。