[백준] : (Python)

JiKwang Jeong·2021년 10월 6일
0
post-custom-banner

문제📖

풀이🙏

  • list의 index함수의 경우에는 시간복잡도가 O(n)이므로 시간초과가 발생했다.
  • 그러므로 선형시간복잡도보다 작게할 필요가 있어 중복값을 제거 후 정렬한 리스트를 이용하여 dictionary 인덱싱을 하여 출력한다.

코드💻

import sys
input = sys.stdin.readline

n = int(input())
data = list(map(int, input().split()))
# 중복값 제거 후 정렬
sorted_set_data = sorted(list(set(data)))

# 시간 단축을 위해 딕셔너리 인덱스 사용
dic = {sorted_set_data[i] : i for i in range(len(sorted_set_data))}

for d in data:
    print(dic[d], end=' ')
profile
기억보다 기록, 난리보다 정리
post-custom-banner

0개의 댓글