comefrom: <awangdev>Palindrome Partitioning II_1.java
code: private boolean[][] calcPalindrome(char[] s) {
  
          int n = s.length;
          boolean[][] palindrome = new boolean[n][n];
          
          for (int mid = 0; mid < n; mid++) {
              int i = mid, j = mid;
              while (i >= 0 && j < n && s[i] == s[j]) {
                  palindrome[i][j] = true;
                  i--;
                  j++;
              }
              
              i = mid;
              j = mid + 1;
              while (i >= 0 && j < n && s[i] == s[j]) {
                  palindrome[i][j] = true;
                  i--;
                  j++;
              }
          }
          return palindrome;
      }
masked: private boolean [ ] [ ] var_0 ( char [ ] var_1 ) {
    int var_3 = var_1 . length ;
    boolean [ ] [ ] var_5 = new boolean [ var_3 ] [ var_3 ] ;
    for ( int var_7 = 0 ;
    var_7 < var_3 ;
    var_7 ++ ) {
      int var_8 = var_7 , var_9 = var_7 ;
      while ( var_8 >= 0 && var_9 < var_3 && var_1 [ var_8 ] == var_1 [ var_9 ] ) {
        var_5 [ var_8 ] [ var_9 ] = true ;
        var_8 -- ;
        var_9 ++ ;
      }
      var_8 = var_7 ;
      var_9 = var_7 + 1 ;
      while ( var_8 >= 0 && var_9 < var_3 && var_1 [ var_8 ] == var_1 [ var_9 ] ) {
        var_5 [ var_8 ] [ var_9 ] = true ;
        var_8 -- ;
        var_9 ++ ;
      }
    }
    return var_5 ;
  }
  