라틴 방진은 서로 다른 숫자 n개로 채운 n×n 배열이고, 각 숫자가 모든 행에 정확히 한 번, 모든 열에도 정확히 한 번 나온다. (이 이름은 레온하르트 오일러가 이 주제를 다룬 논문에서 라틴 문자를 쓴 데서 유래했다.)
맨 윗 행과 맨 왼쪽 열이 둘 다 자연 순서로 놓인 라틴 방진을 축소형이라고 한다. 숫자 집합의 자연 순서는 값이 커지는 순서다.
n×n 배열을 읽어 라틴 방진인지 판정하고, 라틴 방진이면 축소형인지까지 판정하는 프로그램을 작성하라.