1. 2차원 Maze의 크기 및 2차원 Maze의 구성을 입력 받는다.                


2. Maze의 크기만큼, visit 배열을 만들어 주고 초기화 해준다. 


3. Queue를 구성하고, 시작지점의 x,y 좌표와, Count 값을 push한다.


4. Queue의 Front 값(x,y,Count)을 불러 오고, 만약 Front 좌표(x,y)가 끝점이면, Queue의 Count 값을 출력 하고,  반복을 종료한다. 그 이외의 경우엔 Queue를 pop 시켜준다.


5. 현재 좌표의 위쪽(x,y-1),아래쪽(x,y+1),오른쪽(x-1,y),왼쪽(x+1,y)을 탐색한다.


6. 탐색한 장소중에, 아직 탐색한 장소의 visit 값이 0이면, visit값을 1로 초기화 해주고, 그 장소의 좌표(?,?)와 Queue의 Front의 Count값+1을 Queue에 push 해준다.


7. Queue의 Size가 0이 될때까지. 4,5,6번 과정을 반복 한다. 



이정도면 비전공자도 이해가는 수준 ㅇㅈ?