728x90
반응형
구현 언어: 파이썬
import sys
input = sys.stdin.readline
n = int(input())
num_set = set()
nums = list(map(int, input().split()))
num_set = sorted(set(nums))
num_dic = {value: index for index, value in enumerate(num_set)}
for num in nums:
print(num_dic[num], end=' ')
시도 횟수: 2
구현 포인트:
마지막 부분을 딕셔너리가 아닌 리스트로 처리해서 탐색했을 때는 시간 초과가 났었다.
*enumerate() 함수는 순서와 함께 수를 반환한다.
예1)
t = [1, 5, 7, 33, 39, 52]
for p in enumerate(t):
print(p)
# (0, 1) (1, 5) (2, 7) (3, 33) (4, 39) (5, 52)
예2)
for i, v in enumerate(t):
print("index : {}, value: {}".format(i,v))
# index : 0, value: 1
# index : 1, value: 5
# index : 2, value: 7
# index : 3, value: 33
# index : 4, value: 39
# index : 5, value: 52
728x90
반응형
'Archive > BOJ' 카테고리의 다른 글
백준 7785번: 회사에 있는 사람 (0) | 2021.04.09 |
---|---|
백준 18115번: 카드 놓기 (0) | 2021.04.09 |
백준 1003번: 피보나치 함수 (0) | 2021.03.14 |
백준 1764번: 듣보잡 (0) | 2021.03.13 |
백준 1620번: 나는야 포켓몬 마스터 이다솜 (0) | 2021.03.13 |