fork download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.io.*;
  4.  
  5. class Ideone
  6. {
  7. public static void main (String[] args) throws java.lang.Exception
  8. {
  9. int[] arr = new int[]{1,4,5,0,1,9};
  10. int target = 6;
  11. ArrayList<Integer> result = subarraySum(arr, target);
  12. System.out.println(result);
  13. }
  14.  
  15. public static ArrayList<Integer> subarraySum(int[] arr, int target) {
  16. Map<Integer,Integer> map = new HashMap<>();
  17. map.put(0,0);
  18.  
  19. ArrayList<Integer> list = new ArrayList<>();
  20. int currentSum = 0;
  21. for(int i=0;i<arr.length;i++){
  22. currentSum += arr[i];
  23. if(map.containsKey(currentSum - target)){
  24. list.add(map.get(currentSum-target)+1);
  25. list.add(i+1);
  26. return list;
  27. }
  28. map.putIfAbsent(currentSum,i+1);
  29. }
  30.  
  31. list.add(-1);
  32. return list;
  33. }
  34. }
  35.  
Success #stdin #stdout 0.08s 52504KB
stdin
Standard input is empty
stdout
[3, 5]