[AHOI / HNOI2017]影魔
题号:NC20559
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

影魔,奈文摩尔,据说有着一个诗人的灵魂。事实上,他吞噬的诗人灵魂早已成千上万。千百年来,他收集了各式各样 的灵魂,包括诗人、牧师、帝王、乞丐、奴隶、罪人,当然,还有英雄。
每一个灵魂,都有着自己的战斗力,而影魔,靠这些战斗力提升自己的攻击。奈文摩尔有 n 个灵魂,他们在影魔宽广的体内可以排成一排,从左至右标号 1n
i 个灵魂的战斗力为 ,灵魂们以点对的形式为影魔提供攻击力,对于灵魂对 来说,若不存在 大于 或者 ,则会为影魔提供 p_1 的攻击力(可理解为:当 时,因为不存在满足 s ,从 而 不存在,这时提供 p_1 的攻击力;当 时,若 , 则 提 供 p_1 的 攻 击 力 );
另 一 种 情 况 , 令 c 的最大值,若 c 满足:,或 者 ,则会为影魔提供 p_2 的攻击力,当这样的 c 不存在时,自然不会提供这 p_2 的攻击力;其他情况的点对,均不会为影魔提供攻击力。
影魔的挚友噬魂鬼在一天造访影魔体内时被这些灵魂吸引住了,他想知道,对于任 意一段区间,位于这些区间中的灵魂对会为影魔提供多少攻击力,即考虑所有满足 的灵魂对 i,j 提供的攻击力之和。顺带一提,灵魂的战斗力组成一个 1n 的排列:

输入描述:

第一行 n,m,p_1,p_2 第二行 n 个数:
接下来 m 行,每行两个数 a,b,表示询问区间 中的灵魂对会为影魔提供多少攻击力。
;

输出描述:

共输出 m 行,每行一个答案,依次对应 m 个询问。
示例1

输入

复制
10 5 2 3 
7 9 5 1 3 10 6 8 2 4 
1 7 
1 9 
1 3 
5 9
1 5

输出

复制
30
39
4
13
16

备注:

对于 的数据,

另有  的数据,

对于 的数据,