백준 18870번 좌표 압축(python)

마뇽미뇽·2025년 3월 10일
0

알고리즘 문제풀이

목록 보기
126/165

1. 문제

https://www.acmicpc.net/problem/18870

2. 풀이

처음에 값이 인덱스로 나와서 index 함수를 사용하려고 했으나 예상과 달리 전혀 다른 값이 나왔다.
다른 풀이 방법을 고민하다 enumerate를 사용한 방법이 인덱스와 같이 반복을 돌릴 경우 사용한다는 것을 알게 되었고, 인덱스와 깂을 같이 저장하기 위해 해시맵과 동일한 딕셔너리를 사용하였다.

3. 코드

n = int(input())
arr = list(map(int, input().split()))

temp = sorted(set(arr))
answer = {num: idx for idx, num in enumerate(temp)}

for num in arr:
    print(answer[num], end=' ')

4. 알게된 점

📚`enumberate는 인덱스와 값을 같이 반복해서 사용하고 싶을 경우 사용한다.
key, value 값을 각각 저장하는 경우 사용한다.

https://m.blog.naver.com/rheesungjun/222753329608

profile
Que sera, sera

0개의 댓글