#P5378. 前缀和_模板1

前缀和_模板1

题目大意

给一个长度为n的数组,再给m个问题。每个问题会给两个位置x和y(输入里的x、y是1开始数的,比如“1 5”就是数组第1个到第5个元素),你需要算出这两个位置之间(包含这两个位置)所有元素的和,然后把每个结果单独输出一行。

输入要求

  1. 第一行:两个整数n和m。数据范围:n106n \leq 10^6k104k \leq 10^4
  2. 第二行:n个整数,即数组的所有元素。数据范围:所有元素均在int类型取值范围内
  3. 接下来m行:每行两个整数x和y,代表要计算和的元素范围(从第x个到第y个)。 数据范围:1xyn1 \leq x \leq y \leq n

输出要求

对m个问题,每个问题输出一行整数,即该问题里x到y的元素和。

  • 数据范围:结果均在int类型取值范围内(无需考虑结果溢出问题)。

样例输入

5 3
1 2 3 4 5
1 5
2 3
4 4

样例输出

15
5
4

样例解释

  1. 输入分析:数组是[1,2,3,4,5](共5个元素),需回答3个问题。
  2. 第一个问题“1 5”:计算第1到第5个元素的和,1+2+3+4+5=15,输出15。
  3. 第二个问题“2 3”:计算第2到第3个元素的和,2+3=5,输出5。
  4. 第三个问题“4 4”:仅计算第4个元素,结果为4,输出4。