- 0
- 이니스프리
- 조회 수 559
방향(ULRD)이 담긴 문자열을 받아서 2D 좌표계의 원점에서 시작하여 최종 위치를 반환하는 함수를 작성하는 문제입니다.
사이트에 올라온 모범답안은 다음과 같습니다.
1 2 3 4 5 6 7 8 9 10 11 12 | def solution(commands): current_position = [ 0 , 0 ] for d in commands: if d = = "L" : current_position[ 0 ] - = 1 elif d = = "R" : current_position[ 0 ] + = 1 elif d = = "U" : current_position[ 1 ] + = 1 elif d = = "D" : current_position[ 1 ] - = 1 return current_position |
위 풀이도 정석적인 해법이지만, 딕셔너리를 사용하면 보다 깔끔하게 풀 수 있다고 생각합니다 ^^
1 2 3 4 5 6 7 | def solution(commands): k = { 'U' : ( 0 , 1 ), 'D' : ( 0 , - 1 ), 'R' : ( 1 , 0 ), 'L' : ( - 1 , 0 )} p = [ 0 , 0 ] for s in commands: p[ 0 ] + = k[s][ 0 ] p[ 1 ] + = k[s][ 1 ] return p |
작성자
댓글 0
권한이 없습니다.