A very basic approach using grid
:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) grid (3,3);
\draw (0,4) grid (3,7);
\draw (4,0) grid (7,3);
\draw (4,4) grid (7,7);
\foreach \i/\valor in {1/1,2/2,3/3,5/n-2,6/n-1,7/n}
{
\node[anchor=south] at (\i-0.5,7) {$\valor$};
\node[anchor=east] at (0,-\i+7.5) {$\valor$};
}
\node at (3.5,1.5) {$\cdots$};
\node at (3.5,5.5) {$\cdots$};
\node at (1.5,3.5) {$\vdots$};
\node at (5.5,3.5) {$\vdots$};
\node at (3.5,3.5) {$\ddots$};
\end{tikzpicture}
\end{document}

With the new requirement of the edited question:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw (0,0) grid (3,3);
\draw (0,4) grid (3,7);
\draw (4,0) grid (7,3);
\draw (4,4) grid (7,7);
\foreach \i/\valor in {1/1,2/2,3/3,5/n-2,6/n-1,7/n}
{
\node[anchor=south] at (\i-0.5,7) {$\valor$};
\node[anchor=east] at (0,-\i+7.5) {$\valor$};
}
\node at (3.5,1.5) {$\cdots$};
\node at (3.5,5.5) {$\cdots$};
\node at (1.5,3.5) {$\vdots$};
\node at (5.5,3.5) {$\vdots$};
\node at (3.5,3.5) {$\ddots$};
\draw[red,ultra thick] (0,0) -- (7,7);
\end{tikzpicture}
\end{document}

:)
tikzpicture
(since you seem to have included both tags)?tabular
, but the fact that the rules aren't continuous would cause for some ugliness. It's not that it's hard (once you get to grips with tabulars), it's just ugly. (Thetabular
solution would potentially be more efficient, but the TikZ solution is prettier by far.)ytableau
; I just don't know what it is. The attempt has uncovered several potentially useful features I could add, though.