728x90
반응형
1. 알고리즘
여기를 클릭하면 문제를 확인할 수 있다.
문제에 따르면 원본 데이터에서 중복되는 수를 없애고 숫자가 작은 순서대로 번호를 매겨 저장한 압축 데이터를 생성한다.
그런 다음에 원본 데이터의 값들을 압축 데이터에 있는 값으로 변환해 출력해주면 된다.
2. 코드
import sys
IN = sys.stdin.readline
if __name__ == "__main__":
N = int(IN())
arr = list(map(int, IN().split()))
sort_arr = sorted(set(arr)) # 중복된 수 제거 후 정렬
dic = {sort_arr[i]: i for i in range(len(sort_arr))} # 좌표 압축 사전화
s = "" # 문자열로 연결
for i in arr:
s += str(dic[i]) + " "
print(s[:-1])
728x90
반응형
'~2023' 카테고리의 다른 글
[Slack] 리마인더 봇 350% 활용하기 (0) | 2023.05.02 |
---|---|
[DART] 공시대상회사 정보 가져오기 (0) | 2023.05.01 |
[Wandb] 손쉽게 실험 결과 기록 및 실험 환경 보존 (0) | 2023.04.29 |
[Streamlit] 손쉽게 프로토타입 만들기 (0) | 2023.04.28 |
[티스토리] LaTex 설정해서 수식 표현하기 (0) | 2023.04.28 |