[BOJ] 18870번: 좌표 압축 (python)

한서영·2023년 4월 10일
0

BOJ

목록 보기
11/15

문제 링크 : https://www.acmicpc.net/problem/18870

💡 해결 방법

  • set을 사용해서 중복제거하고, counter로 중복개수 확인한다. dict 사용해서 입력값을 key, 인덱스를 value로 저장한다. dict 사용 전에 sort를 하여 해당 인덱스가 value가 되면 출력 시 value만 출력하면 된다.

🖥️ 코드

import sys
from collections import Counter


N = int(sys.stdin.readline())
arr = list(map(int, sys.stdin.readline().rstrip().split()))
sortArr = list(set(arr))
sortArr.sort()
count = Counter(arr)
dic = {string:i for i, string in enumerate(sortArr)}

for i in range(len(arr)):
    print(dic[arr[i]], end=" ")

✏️ 알고리즘 분류

  • 정렬
  • 값 / 좌표 압축

0개의 댓글