fork download
  1. import java.util.*;
  2. public class Main {
  3. public static void main(String[] args) {
  4. int arr[] ={1,2,3};
  5. int k = 2;
  6. int i =0,count =0;
  7. Map<Integer,Integer>map = new HashMap<>();
  8. for(int j =0; j< arr.length; j++){
  9. map.put(arr[j],map.getOrDefault(arr[j],0)+1);
  10.  
  11. while(map.size() >k ){
  12. if(map.get(arr[i]) > 0){
  13. map.put(arr[i],map.get(arr[i])-1);
  14. if(map.get(arr[i]) == 0){
  15. map.remove(arr[i]);
  16. }
  17. i++;
  18. }
  19. }
  20. if(map.size()<=k){
  21. count += (j-i+1);
  22. }
  23. }
  24. System.out.println(count);
  25. }
  26. }
Success #stdin #stdout 0.12s 52544KB
stdin
Standard input is empty
stdout
5