[백준 파이썬 18870번]좌표 압축★dictionary 활용!!!★
2022. 9. 23. 14:43
728x90
반응형
import sys
N = int(sys.stdin.readline())
#2 4 -10 4 -9
#2는 -10 -9로 2개
#4는 2 -10 09로 3개
#-10은 0개
#4는 3개
#-9는 1개
A = list(map(int, sys.stdin.readline().rstrip().split()))
B = sorted(list(set(A)) , reverse= False)
dic = {}
for i in range(len(B)):
dic[B[i]] = i
#B[0] = -10 : 0
#B[1] = -9 : 1
#B[2] = 2 : 2
#B[3] = 4 : 3
for i in A:
print(dic[i] , end = ' ')
#dic[2] = 2
#dic[4] = 3
index는 시간복잡도 O(n) 으로 시간초과가 난다.
dictionary를 적극활용하자!
728x90
반응형
'Python(백준) > 정렬' 카테고리의 다른 글
[백준 파이썬 25305번]커트라인★SORTED()★우선순위 큐로 풀어보기★VER2.0 (0) | 2023.04.09 |
---|---|
[백준 파이썬 2587번]대표값★우선순위 힙으로 풀어보기 (0) | 2023.04.09 |
[백준 파이썬 2750번]수 정렬하기★우선순위 힙으로 풀어보기★삽입,버블 정렬 추후에 해보기★VER2.0 (0) | 2023.04.09 |
[백준 파이썬 11004번]★K번째 수★sorted()??★퀵 정렬★VER2.0★ (0) | 2023.01.01 |
[백준 파이썬 1377번]★버블소트★시간초과★VER2.0★ (0) | 2022.12.31 |