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[] nums = {1, -1, 5, -2, 3} ;
  14. int k = 3 ;//, the subarray [1, -1, 5, -2] sums to 3 and has length 4
  15. int maxlen = 0;
  16. HashMap<Integer, Integer> mp = new HashMap<>();
  17. mp.put(0, 1);
  18. int n = nums.length;
  19. int sum = 0;
  20. for(int i=0, j=0; j<n; j++){
  21. sum += nums[j];
  22. while(i<=j && sum>k){
  23. sum-=nums[i];
  24. i++;
  25. }
  26. if(sum ==k){
  27. maxlen = Math.max(maxlen, j-i+1);
  28. }
  29. }
  30. System.out.println(maxlen);
  31. }
  32. }
Success #stdin #stdout 0.07s 54604KB
stdin
Standard input is empty
stdout
0