Description
开始时,seq 数组已清零。请注意 seq 数组的第一个元素的下标是 0 而非 1。
void something (int jump)
{
for (int i = 0; i < N; i += jump)
++seq[i];
}
Mirko 调用了 something 函数 K 次,第 i 次调用时 jump=Xi。
接下来有 Q 次查询,每次查询包含两个整数 Li, Ri,对于每组查询请输出 i=Li∑Riseqi。
第一行:N,K。
接下来一行 K 个整数,第 i 个为 Xi。
第 N+2 行:Q。
接下来 Q 行:每行两个整数 Li, Ri。
共 Q 行,第 i 行包含第 i 组查询的答案。
10 4
1 1 2 1
3
0 9
2 6
7 7
35
18
3
11 3
3 7 10
3
0 10
2 6
7 7
8
2
1
Hint
样例说明 1
seq={4,3,4,3,4,3,4,3,4,3}
样例说明 2
seq={3,0,0,1,0,0,1,1,0,1,1}
数据范围与提示
1≤N,K,Q≤106, 1≤Xi<N, 0≤Li≤Ri<N.
Source
[COCI2009-2010#5] PROGRAM