fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. // your code goes here
  13. int arr[] = {1,2,3,4,5,6};
  14. int i = 0;
  15. int j = 5;
  16. int []prefixSum = calculatePrefix(arr);
  17. System.out.println("sum in range is "+ rangeSumQuery(i,j,prefixSum));
  18. }
  19. static int[] calculatePrefix(int[] arr){
  20. int[] res = new int[arr.length];
  21. int sum = 0;
  22. for(int i=0;i<arr.length;i++){
  23. sum+=arr[i];
  24. res[i] = sum;
  25. }
  26. return res;
  27. }
  28. static int rangeSumQuery( int i, int j, int[] prefixSum){
  29. int leftSum = i>0?prefixSum[i-1]:0;
  30. int rightSum = j<prefixSum.length?prefixSum[j]:0;
  31. return rightSum-leftSum;
  32. }
  33. }
Success #stdin #stdout 0.16s 53460KB
stdin
Standard input is empty
stdout
sum in range is 21