프로그래밍언어문법/실력키우기문제
1006 : 로봇- 연습문제
파아란기쁨1
2021. 7. 10. 11:14
반응형
연습문제 1) 다음과 같이 8 * 8 배열의 위치에서 0 이 있는 위치로만 이동할 수 있는 경우 1,1 에서 출발하여 8,8 위치에 갈 수 있는 최단 거리는 얼마인가.(방향은 동서남북 으로 이동할 수 있다)
입력예)
0 0 0 0 0 0 0 0
0 1 0 1 0 1 1 1
1 1 1 1 0 0 0 0
0 0 0 0 0 1 1 1
0 1 1 1 0 1 1 1
0 0 0 0 0 0 0 0
0 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
출력예)
23
연습문제2) 다음과 같이 n * m 배열의 위치에서 0 이 있는 위치로만 이동할 수 있고 방향은 동서남북으로 이동 할 수 있는 로봇이 있다. 이때 한번 작업으로 이동할 수 있는 경우는 자신이 가르키고 있는 방향으로 한칸 이동할 수 있거나 혹은 자신의 위치에서 90도 직각으로 회전 할 수 있다.
그렇다면 1,1 의 오른쪽 방향을 바라 보고 있는 위치에서 5,6의 오른쪽 방향을 바라보고 있는 위치 까지 이동할 수 있는 최소 작업횟수는 몇번인지 구하는 프로그램을 작성하시오.
입력 형식은 첫번째 줄에 n 과 m
그 다음부터 n * m 의 데이터가 입력 된다.
입력예)
5 6
0 0 0 0 0 0
0 1 1 0 1 0
0 1 0 0 0 0
0 0 1 1 1 0
1 0 0 0 0 0
출력예)
11
반응형