Transversals of Latin Squares According to this thesis, page $28$, the following Latin Square has $3$ $0$-s transversals: $$\begin{bmatrix}1 & 2 & 3 & 4 & 5\\ 2 & 4 & 1 & 5 & 3\\ 3 & 5 & 4 & 2 & 1\\ 4 & 1 & 5 & 3 & 2\\5 & 3 & 2 & 1 & 4\end{bmatrix} \implies \begin{bmatrix}1 & & & &\\ & & & 5 & \\ & & 4 & & \\ & & & & 2\\ & 3\end{bmatrix}, \begin{bmatrix}& & & 4 &\\2 & & & &\\ & & & & 1 \\ & & 5 & &\\ & 3\end{bmatrix}, \begin{bmatrix}& & & &5\\& & 1 & &\\ & & & 2 &\\4 & & & &\\& 3\end{bmatrix}.$$ The definition of a $0$-s transversal for a Latin square of order $n$ is 

a set of $n$ ordered triples such that the first and second entries are the rows and columns respectively in which the values $1,\ldots,n$ occur exactly once and the third entry of the triple is the value, of which there are $n$ distinct values.

Basically, we need to visit each row and column only once and we must have $5$ distinct symbols at the end. I can represent each transversal as $$t_1 = \{(1,1,1),(2,4,5),(3,3,4),(4,5,2),(5,2,3)\}$$ $$t_2 = \{(1,4,4),(2,1,2),(3,5,1),(4,3,5),(5,2,3)\}$$ $$t_3 = \{(1,5,5),(2,3,1),(3,4,2),(4,1,4),(5,2,3)\}$$ So why are these the only three? How do I know there are only three of them?
 A: I don't think there's any slick way to determine that this Latin square has exactly $3$ transversals---we just count them.  E.g., here's some GAP code:
L:=[[1,2,3,4,5],[2,4,1,5,3],[3,5,4,2,1],[4,1,5,3,2],[5,3,2,1,4]];;

ExtendPartialTransversal:=function(T)
  local i,j,TNew;

  # we try to add entry (i,j,L[i][j]) to T without clashing  

  # looking at row i
  i:=Size(T)+1;

  # looking at column j
  for j in [1..5] do

    # column already used
    if(ForAny([1..i-1],k->T[k][2]=j)) then continue; fi;

    # symbol already used
    if(ForAny([1..i-1],k->T[k][3]=L[i][j])) then continue; fi;

    # add to partial transversal
    TNew:=Concatenation(T,[[i,j,L[i][j]]]);

    # if transversal complete, then print, otherwise extend
    if(Size(TNew)=5) then
      Print(TNew,"\n");
    else
      ExtendPartialTransversal(TNew);
    fi;

  od;
end;;

# start with the empty partial transversal
ExtendPartialTransversal([]);

which returns the three transversals:
[ [ 1, 1, 1 ], [ 2, 4, 5 ], [ 3, 3, 4 ], [ 4, 5, 2 ], [ 5, 2, 3 ] ]
[ [ 1, 4, 4 ], [ 2, 1, 2 ], [ 3, 5, 1 ], [ 4, 3, 5 ], [ 5, 2, 3 ] ]
[ [ 1, 5, 5 ], [ 2, 3, 1 ], [ 3, 4, 2 ], [ 4, 1, 4 ], [ 5, 2, 3 ] ]

and shows there's no others by exhaustive search.
A: A latin square is represented as $t_i=(r,c,s)$ which means that r represents row 
of the latin square, c represents column of the latin square and s is the number
whose location is $row=r\;\;and\;\;column=c$.
