https://www.acmicpc.net/problem/18870
<틀린 코드 - 시간 초과>
import sys
input = sys.stdin.readline
n = int(input())
x = list(map(int,input().split()))
x2 = sorted(set(x))
for i in range(n):
print(x2.index(x[i]), end=' ')
<맞은 코드>
받은 리스트를 집합으로 만들어 중복을 제거해준뒤, 다시 딕셔너리로 만들어줘서 해당 값을 키값으로 찾을 수 있게 구현하였다.
import sys
input = sys.stdin.readline
n = int(input())
x = list(map(int,input().split()))
x2 = sorted(set(x))
#딕셔너리로 만들기
dic = {x2[i]:i for i in range(len(x2))}
for i in range(n):
print(dic[x[i]], end=' ')