Typesetting permutations and alignment
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[\setlength{\arraycolsep}{4pt}
\begin{matrix}
\llap{(}1 & 2 & 3 & 4 & 5\rlap{)}&\llap{(}6 & 7 & 8 & 9 & 10\rlap{)} \\
1 & 2 & \llap{(}3 & 4 & 5&6 & 7\rlap{)} & 8 & 9 & 10\\
1 & 2 & 3 & \llap{(}4 & 5&6 & 7 & 8\rlap{)} & 9 & 10
\end{matrix}
\]
\end{document}
To take David's excellent answer a step further...if the matrix is large, it can get tiring to type in all the \llap
s and \rlap
s. Thus, one can make (
and )
active and take care of the laps automatically. After the initial setup, input is simplified.
\documentclass{article}
\usepackage{amsmath}
\let\svlp(
\let\svrp)
\begin{document}
\[\setlength{\arraycolsep}{4pt}
\catcode`(=\active
\def({\llap{\svlp}}
\catcode`)=\active
\def){\rlap{\svrp}}
\begin{matrix}(1 & 2 & 3 & 4 & 5)&(6 & 7 & 8 & 9 & 10) \\
1 & 2 & (3 & 4 & 5&6 & 7) & 8 & 9 & 10\\
1 & 2 & 3 & (4 & 5&6 & 7 & 8) & 9 & 10
\end{matrix}
\]
\end{document}
A solution with blkarray
:
\documentclass{article}
\usepackage{mathtools}
\usepackage{blkarray}%
\begin{document}
\[
\makeatletter
\BA@colsep=3pt
\makeatother
\begin{blockarray}{*{10}{c}}
\begin{block}{(*{5}{c})(*{5}{c})}
1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 & 10\\
\end{block}
\begin{block}{cc(*{5}{c})ccc}
1 & 2 & 3 & 4 & 5&6 & 7 & 8 & 9 & 10\\
\end{block}
\begin{block}{ccc(*{5}{c})cc}
1 & 2 & 3 & 4 & 5 &6 & 7 & 8 & 9 & 10_\\
\end{block}
\end{blockarray}
\]
\end{document}