编程题
### 问题描述
小明拥有一个数组,这个数组长度为 $n$ ,第 $i$ 个数的值为 $a_i$ 。对于这个数组,每一位都有自己的贡献值,为 $i\times a_i$ ,现在小明想进行 $m$ 次操作,每次操作都给出一个区间 $l,r$ 且 **$(r-l)\leq 100$** ,然后翻转这个区间中的所有值,即 $\lbrace a_l,a_l+1 ,\dots a_r\rbrace$ 反转为 $\lbrace a_r,a_r-1 ,\dots a_l\rbrace$ 。对于每次翻转,小明想知道这次翻转后这个数组的总贡献值为多少,即数组中的每一位的贡献值的和。你能帮帮他吗。
### 输入格式
第一行,包含两个正整数 $n$ 和 $m$ $(1\leq n,m\leq 10^5)$ 。代表小明拥有一个长度为 $n$ 的数组,并将要进行 $m$ 次操作。
第二行,包含 $n$ 个正整数 $a_i$ $(1\leq a_i\leq 10^9)$ 。代表数组 $a$ 中每一位数的值。
接下来 $q$ 行,每行包含两个正整数 $l,r$ $(1\le l \le r\le n)$ **且 $(r-l)\leq 100$** ,代表小明该次操作所要翻转的区间。
### 输出格式
输出 $q$ 行,每行包含一个正整数,代表对于每次操作,输出该次操作后这个数组的总贡献值为多少,即数组中的每一位的贡献值的和。
### 样例输入
```
5 2
13521 13898 17327 31111 17309
4 5
4 5
```
### 样例输出
```
318089
304287
```
### 样例说明
对于给出的测试样例:
第一次翻转区间 $4\sim5$ 后,数组变为 $\lbrace 13521,13898,17327,17309,31111\rbrace$ ,他们的贡献值为 $\lbrace 13521\times 1+13898\times 2+17327\times3+17309\times 4+31111\times5\rbrace=318089$ ,故输出 $318089$ 。
第二次翻转区间 $4\sim5$ 后,数组 $a$ 变为 $\lbrace 13521,13898,17327,31111,17309\rbrace$ 他们的贡献值为 $\lbrace 13521\times 1+13898\times 2+17327\times3+31111\times4+17309\times 5\rbrace=304287$ 。