문제
@@@@문제 수정 해야함@@@@
미로를 탈출하는 방법 중에 왼손법칙이라는 것이 있다.
이 방법은 미로의 벽에 왼쪽 손을 대고 계속 걷는 방법이다.
왼손법칙을 이용했을 때, 미로를 탈출하는 데 걸리는 시간을 구하려고 한다.
1×1 크기 정사각 칸으로 이루어진 N×N크기의 미로가 주어진다.
미로를 탈출하는 사람은 0행 0열에서 시작하며, N-1행 N-1열에 도착하면 탈출에 성공한다.
1초에 상하좌우 한 칸씩 이동할 수 있으며, 대각선으로 이동할 수 없다.
아래 그림은 미로를 탈출하려는 사람의 초기 위치와 미로의 구조를 나타낸다.
0과 1은 각각 비어있는 공간과 벽을 나타낸다.

0행 0열부터 왼손을 벽에 대고 걷게 되면 아래 그림에 표시된 화살표를 따라 미로를 순회하게 된다.

위 그림과 같이 미로를 순회하게 되면 총 10회의 칸 이동을 하게 된다.
즉, 미로를 탈출하는데 10초가 걸린다.
미로를 나타내는 2차원 배열 정보가 주어진다.
왼손법칙을 이용해 미로를 탈출할 때 걸리는 시간을 구하는 프로그램을 작성하시오.
입력
첫 행에 정사각 미로의 크기 N이 주어진다. ( 3 <= N <= 300)
정사각 미로의 각 원소는 0(비어있어 이동가능) 또는 1(벽으로 이동불가능)이다.
정사각 미로의 가장 왼쪽 상단과 가장 오른쪽 하단은 각각
시작지점과 종료지점으로 항상 0이다.
주어지는 미로는 왼손법칙을 이용해 항상 탈출이 가능하도록 주어진다.
출력
왼손법칙을 이용해 미로를 탈출할 때 걸리는 시간을 구하여 하나의 행에 출력한다.
예제 #1
4
0 1 0 1
0 1 0 0
0 0 0 0
1 0 1 0
10
예제 #2
6
0 1 0 0 0 0
0 1 0 1 1 0
0 1 0 0 1 0
0 1 1 1 1 0
0 1 0 0 0 0
0 0 0 1 1 0
32
예제 #3
6
0 1 0 0 0 0
0 0 1 0 0 0
0 0 0 1 0 0
0 0 0 0 1 0
0 0 0 0 0 0
1 1 1 1 1 0
24
예제 #4
6
0 0 0 0 0 0
1 1 1 0 1 1
0 0 0 0 0 0
1 0 1 1 1 1
0 0 0 0 0 0
1 1 0 1 1 0
22
힌트
출처
LINE2020_2 4번 | dnfka0930