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 = { 4, 2, 2, 6, 4 };
  14. int k = 6;
  15.  
  16. System.out.println(subarrayXor(arr, k));
  17. }
  18. static int subarrayXor(int[]arr, int k){
  19. HashMap<Integer,Integer>map = new HashMap<>();
  20. int res = 0;
  21. int prefixXor = 0;
  22. for(int val:arr){
  23. prefixXor ^= val;
  24. if(k == prefixXor) {
  25. res++;
  26. }
  27. res+= map.getOrDefault(prefixXor ^ k,0);
  28.  
  29. map.put(prefixXor,map.getOrDefault(prefixXor,0)+1);
  30. }
  31. return res;
  32.  
  33. }
  34. }
Success #stdin #stdout 0.09s 54588KB
stdin
Standard input is empty
stdout
4