보석 상자의 수수께끼
면접 대비시간 제한1초메모리 제한1024 MB
N x N 격자가 시계 방향으로 여러 번 회전되었을 때, 원래 상태로 되돌리는 데 필요한 반시계 방향 90도 회전 횟수를 구합니다.
문제
네로지아 공주는 진주를 개의 열과 개의 칸으로 이루어진 정사각형 보석 상자에 보관한다. 공주는 칸마다 서로 다른 개수의 진주를 넣는다. 상자는 각 열에서 위에서 아래로 갈수록 진주 개수가 늘어나고, 각 행에서 왼쪽에서 오른쪽으로 갈수록 진주 개수가 늘어나도록 배치되어 있다.
공주는 장난이 심한 여동생이 놀이하면서 자기 물건을 건드렸다고 의심한다. 특히 보석 상자가 시계 방향으로 90도 회전되었을 것이라고 보며, 여러 번 회전되었을 수도 있다고 생각한다.
아래 그림 (a)는 상자의 원래 배치 예시이다. 그림 (b)는 이 상자를 시계 방향으로 90도 한 번 돌린 모습이다.

각 칸에 들어 있는 진주 개수가 주어질 때, 보석 상자를 원래 상태로 되돌리는 데 필요한 반시계 방향 90도 회전 횟수의 최솟값을 구하는 프로그램을 작성하라.
입력
첫 줄에 상자의 행과 열 개수 이 주어진다 (). 이어서 개의 줄에 각각 개의 정수 가 주어진다. 는 행 열 칸에 들어 있는 진주 개수이다 (). 행은 위에서 아래로, 열은 왼쪽에서 오른쪽으로 주어진다.
한 줄에 정수 만 출력한다. 은 0, 1, 2, 3 중 하나이며, 상자를 원래 상태로 되돌리기 위해 필요한 반시계 방향 90도 회전 횟수의 최솟값이다.