https://school.programmers.co.kr/learn/courses/30/lessons/178871
풀이 - 나의 생각
딕셔너리를 통해 플레이어의 인덱스를 저장해두고
불린 플레이어와 앞의 플레이어를 딕셔너리에서 찾아
바꿔줍니다.
가장 당황스러운 부분은
players[now_index-1], players[now_index] = players[now_index], players[now_index-1]
이게 된다고?????
코드
def solution(players, callings):
index_player = {player:i for i, player in enumerate(players)}
for player in callings:
now_index = index_player[player]
if now_index != 0:
pre_player = players[now_index-1] # 불린 선수 앞의 선수
players[now_index-1], players[now_index] = players[now_index], players[now_index-1]
index_player[pre_player] += 1
index_player[player] -= 1
return players
728x90
'프로그래머스 > Lv.1' 카테고리의 다른 글
Summer/Winter Coding(~2018) > 소수 만들기 - Pyton, Combinations, 조합, 소수 (0) | 2024.11.26 |
---|---|
[PCCP 기출문제] 1번 / 동영상 재생기 - Pyton, f_string (0) | 2024.11.25 |
2023 KAKAO BLIND RECRUITMENT > 개인정보 수집 유효기간 - Python, 구현, map (0) | 2024.11.22 |
2019 KAKAO BLIND RECRUITMENT > 실패율 -Python, 딕셔너리 정렬 (0) | 2024.11.16 |
Summer/Winter Coding(~2018) > 예산 - Python, 바다코끼리 연산자(Walrus Operator) (2) | 2024.11.16 |