728x90
https://school.programmers.co.kr/learn/courses/30/lessons/181925
푸는데 조금 오래걸렸던 문제였다. 문제해결을 좀 복잡하게 생각했다. 딕셔너리를 사용해 key와 value 값을 꺼내오는 문제인 줄 알고 한 참을 풀어보았는데,,, 생각보다 간단한 문제다!
나의 답!
def solution(numLog):
answer = ''
dict = {1: "w", -1:"s", 10:"d", -10:"a"}
for i in range(len(numLog)-1):
deal = numLog[i+1] - numLog[i]
answer += dict[deal]
return answer
숫자를 다루기 위핸 딕셔너리를 생성하고,
numLog안의 숫자를 다루는 것이 아닌, 조작된 수를 다루는 것이기에 다음 인덱스에서 현재 인덱스를 뺀다.
그렇게되면 deal에는 현재 어떤 값을 더하고 뻈는지 나타나게 된다.
이는 딕셔너리의 key값이므로, value값을 얻어내 answer에 더하면 된다!
(다른 사람들 풀이를 보니 딕셔너리를 안쓰긴 했더라)
끄읏-!
728x90
'코딩테스트 > PYTHON' 카테고리의 다른 글
[프로그래머스][PYTHON] Lv. 0 수열과 구간 쿼리 4 (0) | 2023.12.27 |
---|---|
[프로그래머스][PYTHON] Lv. 0 수열과 구간 쿼리 2 (0) | 2023.12.27 |
[프로그래머스][PYTHON] Lv. 0 수열과 구간 쿼리 3 (0) | 2023.12.27 |
[프로그래머스][PYTHON] Lv. 0 주사위 게임 2 (1) | 2023.12.22 |
[프로그래머스][PYTHON] Lv. 0 조건 문자열 (1) | 2023.12.11 |