|
乎乎得到一整数序列A1,A2,...,An,求A1-An中的一个子序列Ap-Aq的和,共T组测试。
输入描述:
输入为T+3行,
第一行,为一个整数n,范围为(3~1000),表示输入序列的长度,
第二行,输入n个整数,每个整数的范围为(1~1000),用空格隔开,
第三行,输入一个整数T,表示T组测试数据。
接下来T行,每行两个整数p和q(1 ≤ p≤ q≤10000),用空格隔开,第一个整数表示子序列的开始,第二个整数表示子序列的结束。
输出描述:
共T行,针对每组输入的子序列的开始和子序列的结束,输出子序列的和并换行,如果 n < p ≤ q,则输出0,如果 p ≤ n ≤ q,则输出p和q覆盖的子序列和。
链接:https://ac.nowcoder.com/acm/contest/24006/J
来源:牛客网
输入
6
1 2 3 4 5 6
3
1 3
3 6
5 8
输出
6
18
11
#include <iostream>
using namespace std;
int main()
{
int a[1000] = { 0 }, n, b[1000][2], c, d, sum;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
int t;
cin >> t;
for (int i = 0; i < t; i++)
{
cin >> b[i][0];
cin >> b[i][1];
sum = 0;
c = b[i][0] - 1;
d = b[i][1] - 1;
for (; c <= d; c++)
{
sum += a[c];
}
cout << sum << endl;
}
return 0;
}
请问
|
上一篇: 各位高手大家好,问一下简单的问题,麻烦帮解答一下.谢谢下一篇: 求开源类StaticEx.h和StaticEx.cpp
|