comefrom: <awangdev>76. Minimum Window Substring_1.java
code: public String minWindow(String s, String t) {
          int left = 0, right = 0, start = 0, counter = t.length(); 
          int minLen = Integer.MAX_VALUE, n = s.length();
          
          int[] freq = new int[256];
          for (char c : t.toCharArray()) freq[c]++;
  
          while (right < n) {
              char head = s.charAt(right++);
              if (freq[head] > 0) counter--; 
              freq[head]--;
  
              while (counter == 0) { 
                  int len = right - left;
                  if (len < minLen) { 
                      minLen = len;
                      start = left;
                  }
                  char tail = s.charAt(left++);
                  if (freq[tail] == 0) counter++; 
                  freq[tail]++; 
              }
          }
          return minLen == Integer.MAX_VALUE ? "" : s.substring(start, start + minLen); 
      }
masked: public String var_0 ( String var_1 , String var_2 ) {
    int var_3 = 0 , var_4 = 0 , var_5 = 0 , var_6 = var_2 . length ( ) ;
    int var_7 = Integer . MAX_VALUE , var_8 = var_1 . length ( ) ;
    int [ ] var_9 = new int [ 256 ] ;
    for ( char var_10 : var_2 . toCharArray ( ) ) var_9 [ var_10 ] ++ ;
    while ( var_4 < var_8 ) {
      char var_11 = var_1 . charAt ( var_4 ++ ) ;
      if ( var_9 [ var_11 ] > 0 ) var_6 -- ;
      var_9 [ var_11 ] -- ;
      while ( var_6 == 0 ) {
        int var_12 = var_4 - var_3 ;
        if ( var_12 < var_7 ) {
          var_7 = var_12 ;
          var_5 = var_3 ;
        }
        char var_13 = var_1 . charAt ( var_3 ++ ) ;
        if ( var_9 [ var_13 ] == 0 ) var_6 ++ ;
        var_9 [ var_13 ] ++ ;
      }
    }
    return var_7 == Integer . MAX_VALUE ? "" : var_1 . substring ( var_5 , var_5 + var_7 ) ;
  }
  