fork download
  1. #include <iostream>
  2. using namespace std;
  3.  
  4.  
  5. long long a[(int)1e5 + 50];
  6. int n;
  7.  
  8. void buildPrefixSum() { // O(n)
  9. for(int i = 1; i < n; i++) {
  10. a[i] += a[i - 1];
  11. }
  12.  
  13. }
  14.  
  15. int getSum(int i, int j) { // O(1)
  16. int sum = a[j];
  17. if(i > 0) sum -= a[i - 1];
  18. return sum;
  19. }
  20.  
  21.  
  22. int main() {
  23. cin >> n;
  24. for(int i = 0; i < n; i++) {
  25. cin >> a[i];
  26. }
  27. buildPrefixSum();
  28. int q;
  29. cin >> q;
  30. while(q-- > 0) {
  31. int a, b;
  32. cin >> a >> b;
  33. cout << getSum(a, b) << endl;
  34. }
  35. return 0;
  36. }
Success #stdin #stdout 0s 4412KB
stdin
3
1 4 1
3
1 1
1 2
0 2
stdout
4
5
6