package com.zhang.reflection.面试.算法模版.前缀和;
import java.util.Scanner;
/**这道题比较简单,主要用于理解前缀和的应用
*
* 给定一个长度为n的数组a_1, a_2,....a_n
* 接下来有q次查询, 每次查询有两个参数l, r.
* 对于每个询问, 请输出a_l+a_{l+1}+....+a_r的和
*
* 输入:
* 3 2(n q)
* 1 2 4
* 1 2
* 2 3
* 输出:
* 3
* 6
*/
public class 前缀和 {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int q=sc.nextInt();
long[] nums=new long[n+1];
for(int i=1;i<=n;i++){
//输入时进行处理,记录到该位置的前n个数的和
nums[i]=sc.nextLong()+nums[i-1];
}
for(int i=1;i<=q;i++){
int l=sc.nextInt();
int r=sc.nextInt();
//r-(l-1)即为所求的结果
System.out.println(nums[r]-nums[l-1]);
}
}
}