comefrom: <gouthampradhan>dynamic_programming_PalindromicSubstrings_1.java
code: public int countSubstrings(String s) {
      boolean[][] T = new boolean[s.length()][s.length()];
      int count = s.length();
      for (int i = 0, j = 0; i < T.length; i++, j++) {
        T[i][j] = true;
      }
      for (int k = 1, col = s.length(); k < col; k++) {
        for (int i = 0, j = k; i < col && j < col; i++, j++) {
          if (k == 1) {
            if (s.charAt(i) == s.charAt(j)) {
              T[i][j] = true;
              count++;
            }
          } else {
            if (s.charAt(i) == s.charAt(j) && T[i + 1][j - 1]) {
              T[i][j] = true;
              count++;
            }
          }
        }
      }
      return count;
    }
masked: public int sample_funcname ( String var_0 ) {
    boolean [ ] [ ] var_1 = new boolean [ var_0 . length ( ) ] [ var_0 . length ( ) ] ;
    int var_2 = var_0 . length ( ) ;
    for ( int var_3 = 0 , var_4 = 0 ;
    var_3 < var_1 . length ;
    var_3 ++ , var_4 ++ ) {
      var_1 [ var_3 ] [ var_4 ] = true ;
    }
    for ( int var_5 = 1 , var_6 = var_0 . length ( ) ;
    var_5 < var_6 ;
    var_5 ++ ) {
      for ( int var_3 = 0 , var_4 = var_5 ;
      var_3 < var_6 && var_4 < var_6 ;
      var_3 ++ , var_4 ++ ) {
        if ( var_5 == 1 ) {
          if ( var_0 . charAt ( var_3 ) == var_0 . charAt ( var_4 ) ) {
            var_1 [ var_3 ] [ var_4 ] = true ;
            var_2 ++ ;
          }
        }
        else {
          if ( var_0 . charAt ( var_3 ) == var_0 . charAt ( var_4 ) && var_1 [ var_3 + 1 ] [ var_4 - 1 ] ) {
            var_1 [ var_3 ] [ var_4 ] = true ;
            var_2 ++ ;
          }
        }
      }
    }
    return var_2 ;
  }
  