이것이 취업을 위한 코딩테스트다. (4) 썸네일형 리스트형 미로 탈출 - 이것이 취업을 위한 코딩테스트다. 예제 5 - 11 동빈이는 N * M 크기의 직사각형 형태의 미로에 갇혀 있다. 미로에는 여러 마리의 괴물이 있어 이를피해 탈출해야한다. 동빈이의 위치는 (1, 1)이고 미로의 출구는 (N, M)의 위치에 존재하며 한 번에 한 칸씩 이동할 수 있다. 이때 괴물이 있는 부분은 0으로, 괴물이 없는 부분은 1로 표시되어 있다. 미로는 반드시 탈출할 수 있는 형태로 제시된다. 이때 동빈이가 탈출하기 위해 움직여야 하는 최소 칸의 개수를 구하시오. 칸을 셀 떄는 시작 칸과 마지막 칸을 모두 포함해서 계산한다. 입력조건 - 첫째 줄에 두 정수 N, M(4 M - 1: continue # 괴물이 없고 방문표시가 False 인 경우에만 if graph[nx][ny] == 1 and not visited[nx][ny]: # 최단 거리 .. 음료수 얼려먹기 - 이것이 취업을 위한 코딩테스트다. 예제 5-10 N * M 크기의 얼음 틀이 있다. 구멍이 뚫려 있는 부분은 0, 칸막이가 존재하는 부분은 1로 표시된다. 구멍이 뚫려 있는 부분끼리 상, 하, 좌, 우로 붙어있는 경우 서로 연결되어있는 것으로 간주한다. 이때 얼음 틀의 모양이 주어졌을 떄 생성되는 총 아이스크림의 개수를 구하는 프로그램을 작성하시오. 다음의 4 * 5 얼음틀 예시에서는 아이스크림이 총 3개 생성된다. 입력조건 - 첫 번째 줄에 얼음 틀의 세로길이 N과 가로 길이 M이 주어진다.(1 M - 1: return False # 방문하지 않은 노드라면 if ice_map[x][y] == 0: # 방문한 노드는 얼음으로 만들어서 표시 ice_map[x][y] = 1 # 상, 하, 좌, 우 모두 방문해서 함수가 끝나지 않고 모두 방문되었다면 dfs.. 게임개발 - 이것이 취업을 위한 코딩테스트다. 예제 4-4 현민이는 게임캐릭터가 맵 안에서 움직이는 시스템을 개발중이다. 캐릭터가 있는 장소는 1 * 1 크기의 정사각형으로 이뤄진 N * M 크기의 직사각형으로, 각각의 칸은 육지 또는 바다이다. 캐릭터는 동서남북 중 한 곳을 바라본다. 맵의 각칸은 (A, B)로 나타낼 수 있고, A는 북쪽으로부터 떨어진 칸의 갯수, B는 서쪽으로부터 떨어진 칸의 개수이다. 캐릭터는 상하좌우로 움직일 수 있고, 바다로 되어 있는 공간에는 갈 수 없다. 캐릭터의 움직임을 설정하기 위해 정해놓은 매뉴얼은 이러하다. 1. 현재 위치에서 현재 방향을 기준으로 왼쪽 방향(반시계 방향으로 90도 회전한 방향)부터 차례대로 갈 곳을 정한다. 2. 캐릭터의 바로 왼쪽 방향에 아직 가보지 않은 칸이 존재한다면, 왼쪽 방향으로 회전한 다음 왼쪽으.. 거스름 돈 예제 3 - 1 거스름돈 당신은 음식점의 계산을 도와주는 점원이다. 카운터에는 거스름돈으로 사용할 500원, 100원, 50원, 10원 짜리 동전이 무한히 존재한다고 가정한다. 손님에게 거슬러 줘야 할 돈이 N원일 때 거슬러 줘야 할 동전의 최소 개수를 구해라. 단 거슬러 줘야 할 돈 N은 항상 10의 배수이다. TIP 먼저 큰 수 부터 차례로 걸어야 하므로 list에 동전들을 오름차순으로 역정렬 시키고 리스트에서 앞쪽 코인(큰 코인) 부터 낸 돈을 나눠서 점점 작아지게 한다. 코인의 갯수를 카운트하고 프린트 한다. 이전 1 다음