197.小美的数组询问
内存限制:256 MB
时间限制:1.000 S
题目描述
小美拿到了一个由正整数组成的数组,但其中有一些元素是未知的(用 0 来表示)。
现在小美想知道,如果那些未知的元素在区间[l, r]范围内随机取值的话,数组所有元素之和的最小值和最大值分别是多少?
共有q次询问。
输入
第一行输入两个正整数n, q,代表数组大小和询问次数。
第二行输入n个整数ai,其中如果输入ai的为 0,那么说明ai是未知的。
接下来的q行,每行输入两个正整数l, r,代表一次询问。
1 <= n, q <= 10^5
0 <= ai <= 10^9
1 <= l <= r <= 10^9
输出
输出q行,每行输出两个正整数,代表所有元素之和的最小值和最大值。
样例输入 复制
3 2
1 0 3
1 2
4 4
样例输出 复制
5 6
8 8
提示
只有第二个元素是未知的。
第一次询问,数组最小的和是 1+1=3=5,最大的和是 1+2+3=6。
第二次询问,显然数组的元素和必然为 8。
时间限制: c/c++: 1s; java: 5s; 其他语言: 3s.