public char[][] fit(int size, Position missingPosition){
        char matrix[][] = new char[size][size];
        matrix[missingPosition.x][missingPosition.y] = 'X';
        fit(matrix, new Position(0,0), matrix.length, missingPosition);
        return matrix;
    }
http://www.geeksforgeeks.org/divide-and-conquer-set-6-tiling-problem/
Test cases
Size of matrix is at least 2 and power of 2 always
Missing point could be on edges
Missing point could be in any of 4 quadrants
src/com/interview/multiarray/TilingProblem.java