백준 18870 파이썬 딕셔너리
2024. 4. 13. 08:19ㆍ코딩 도구/백준 (단계별)
반응형
백준 18870 - 좌표 압축
문제
https://www.acmicpc.net/problem/18870
답안 코드 :
import sys
input = sys.stdin.readline
n = int(input())
arr = list(map(int, input().split()))
sorted_arr = sorted(list(set(arr))) # 중복 제거 및 정렬
dic = {sorted_arr[i]: i for i in range(len(sorted_arr))}
for i in arr:
print(dic[i], end=" ")
백준 / 문제 / 단계별로 풀어보기 / 13단계 정렬
생각 :
# dic = {sorted_arr[i]: i for i in range(len(sorted_arr))}
# 딕셔너리 dic를 생성합니다. 이 딕셔너리는 좌표를 압축하기 위해 사용됩니다.
# 딕셔너리의 키는 정렬된 좌표이고, 값은 해당 좌표의 압축된 인덱스입니다.
# 입력
# 5
# 2 4 -10 4 -9
# 출력
print(sorted_arr) # [-10, -9, 2, 4]
print(dic) # {-10: 0, -9: 1, 2: 2, 4: 3}
for i in arr:
print(dic[i], end=" ") # 2 3 0 3 1
반응형
'코딩 도구 > 백준 (단계별)' 카테고리의 다른 글
백준 14425 파이썬 (1) | 2024.04.15 |
---|---|
백준 10815 파이썬 (3) | 2024.04.14 |
백준 10814 파이썬 런타임에러 해결 (16) | 2024.04.12 |
백준 1181 파이썬 .strip()와 lambda (10) | 2024.04.11 |
백준 11651 파이썬 (13) | 2024.04.10 |