https://www.acmicpc.net/problem/18870
좌표 압축이란 말을 이해하기 힘들어서 검색해 보았다. 검색한 결과는 다음과 같았다.
좌표 압축은 주어진 좌표들의 상대적 순위를 기반으로 새로운 값을 할당하는 것입니다. 각 좌표의 압축된 값은 해당 좌표보다 작은 서로 다른 좌표의 개수와 같아야 합니다.
n = int(input())
arr = list(map(int,input().split()))
dic = dict()
arr2 = arr[:]
arr2.sort()
count = 0
for i in arr2:
if i not in dic:
dic[i] = count
count += 1
for i in arr:
print(dic[i],end=' ')
입력
5
2 4 -10 4 -9
------------------------
출력
2 3 0 3 1
'코딩테스트' 카테고리의 다른 글
[python] 백준 7569 : 토마토 (골드 5) (0) | 2024.07.17 |
---|---|
[python] 백준 17219 : 비밀번호 찾기 (실버 4) (0) | 2024.07.17 |
[python] 백준 14940 번 : 쉬운 최단거리 (실버 1) (0) | 2024.07.15 |
[python] 백준 11724 : 연결 요소의 개수 (실버 2) (0) | 2024.07.15 |
[python] 백준 11659 : 구간 합 구하기 4 (실버 3) (0) | 2024.07.13 |