fork download
  1. #include <stdio.h>
  2.  
  3. int main() {
  4. const int max_n = 200000;
  5.  
  6. int N, Q;
  7. scanf("%d %d", &N, &Q);
  8.  
  9. int a[max_n + 1];
  10. for (int i = 1; i < N + 1; i++) {
  11. scanf("%d", &a[i]);
  12. }
  13.  
  14. // TODO: declare and calculate prefix sum
  15. int p[max_n + 1];
  16. p[0]=0;
  17. for (int i = 1; i < N + 1; i++) {
  18. p[i]=0;
  19. for (int j = 1; j <= i; j++)
  20. p[i]+=a[j];
  21. }
  22. while (Q--) {
  23. int l, r;
  24. scanf("%d%d", &l, &r);
  25. int sum = 0;
  26. // TODO: calculate sum using prefix sum, i.e.
  27. // a[l] + a[l+1] + ... + a[r]
  28. sum=p[r]-p[l-1];
  29. printf("%d\n", sum);
  30. }
  31.  
  32. return 0;
  33. }
  34.  
  35.  
Success #stdin #stdout 0s 5324KB
stdin
5 5 
-5 2 7 3 0
1 5 1 3 2 2 2 4 4 4
stdout
7
4
2
12
3