题目背景
@【数据删除】 : 大家觉得呢 || @【数据删除】 : oi 生活总是充满了幽默。 不过学文化课或许也好不了多少?
题目描述
给定一个长为 n 的序列 a1,a2,⋯,an,定义 a 的一个连续子序列 al,al+1,⋯,ar 是幽默的,当且仅当:
- i=l∑rai>0;
- 对于所有 l≤x≤y<r,满足 i=x∑yai≤0。
q 次询问,每次给定两个整数 l,r,查询满足以下条件的数对 (l′,r′) 个数:
- l≤l′≤r′≤r;
- 连续子序列 al′,al′+1,⋯ar′ 是幽默的。
输入格式
第一行输入两个整数 n,q。
接下来一行输入 n 个整数,第 i 个整数代表 ai。
接下来 q 行,每行输入两个整数 l,r,代表一次询问。
输出格式
对于每组询问,输出一行一个整数,代表答案。
4 3
3 -4 -1 2
1 2
3 4
1 4
1
2
3
7 6
-1 2 -1 -1 -1 2 -1
2 5
4 7
1 7
5 5
1 3
2 4
1
2
4
0
2
1
提示
对于所有数据,保证 1≤n,q≤2×105,1≤l≤r≤n,∣ai∣≤109。
子任务
# |
特殊性质 |
分值 |
0 |
样例 |
0 |
1 |
n,q≤50 |
15 |
2 |
n,q≤3×103 |
20 |
3 |
对于所有询问,r=n |
15 |
4 |
对于所有询问,l=1 |
5 |
- |
35 |