import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 读取数组长度和查询次数 int n = scanner.nextInt(); int q = scanner.nextInt(); // 读取数组元素 long[] a = new long[n + 1]; // 使用1-based索引 for (int i = 1; i <= n; i++) { a[i] = scanner.nextLong(); } // 计算前缀和 long[] prefixSum = new long[n + 1]; for (int i = 1; i <= n; i++) { prefixSum[i] = prefixSum[i - 1] + a[i]; } // 处理每个查询 for (int i = 0; i < q; i++) { int l = scanner.nextInt(); int r = scanner.nextInt(); // 区间和 = 前r项和 - 前(l-1)项和 System.out.println(prefixSum[r] - prefixSum[l - 1]); } scanner.close(); } }