-
[🥰 프로그래머스] 공원 산책Algorithm/1일 1코테 2023. 8. 18. 18:57반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/172928
풀이
dx = {'N':-1, 'S':1, 'E':0, 'W': 0} dy = {'N': 0, 'S':0, 'E':1, 'W':-1} def solution(park, routes): answer = [] x, y = -1, -1 # 시작점 N, M = len(park), len(park[0]) # 공원의 가로세로 # 시작점 찾기 for i in range(N): for j in range(M): if park[i][j] == 'S': x, y = i, j for route in routes: # 방향, 이동 숫자 dir_, dist = route.split(' ') isFalse = False for i in range(1, int(dist) + 1): # 모두 이동했을 경우의 좌표 nx, ny = x + dx[dir_] * i, y + dy[dir_] * i # 공원 벗어나면 out if nx < 0 or ny < 0 or nx > N-1 or ny > M-1: isFalse = True break # 지뢰가 있어도 out if park[nx][ny] == 'X': isFalse = True break # 아웃일 경우는 실행 x if isFalse: continue nx, ny = x + dx[dir_] * int(dist), y + dy[dir_] * int(dist) x, y = nx, ny answer = [x, y] return answer
반응형'Algorithm > 1일 1코테' 카테고리의 다른 글
[🥰 프로그래머스] 추억 점수 (0) 2023.08.17 [😭프로그래머스] 달리기 경주 (0) 2023.08.17 [🥰 leetcode] 692. Top K Frequent Words (0) 2022.10.19 [🥰 leetcode] 1328. Break a Palindrome (0) 2022.10.18 [🥰 leetcode] 53. Maximum Subarray (0) 2022.10.14