이세계개발자의 개발일지

  • 홈
  • 태그
  • 방명록

18870 1

(매일 BOJ) C++ 18870번 좌표압축

이번 문제는 18870번 좌표압축이다.문제 설명N개의 정수가 주어진다. 각 정수에 대해, 해당 값보다 작은 서로 다른 값의 개수를 출력하라.즉, 배열 내 모든 값을 0부터 시작하는 순위(rank)로 압축한 결과를 출력하면 된다.단, 입력되는 정수의 범위는 최대 ±10⁹이므로, 단순하게 배열로 인덱싱할 수 없다.따라서 좌표 압축(Coordinate Compression) 기법을 사용한다.접근법 핵심 아이디어값 자체가 아니라 값의 상대적인 순서만 중요하다.중복된 값은 같은 압축값을 가져야 한다.압축값은 해당 값이 정렬된 배열에서 몇 번째에 위치하는지로 정의된다. 좌표 압축 알고리즘 (O(N log N))원본 배열을 복사하고 정렬한다.정렬된 배열에서 중복을 제거한다.각 원소의 값을 압축된 순위로 매핑한다...

매일 BOJ 2025.08.01
이전
1
다음
더보기
프로필사진

이세계개발자의 개발일지

매일 BOJ 한문제씩 풀기!

  • 분류 전체보기 (109)
    • 매일 BOJ (96)
    • 프로젝트 활동 (0)
    • 백엔드 개발 (0)
    • 프론트 개발 (0)
    • 시험공부 (13)

Tag

이분탐색, C++, 너비 우선 탐색, 바이너리서치, dfs, 그래프 탐색, BFS, 시간복잡도, introduction to programming(2), 과기대, 자료구조, 집합과 맵, 25-2, 매개변수 탐색, 깊이 우선 탐색, 최단 경로, 정렬, 백준, 그래프 이론, 스택,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2026/01   »
일 월 화 수 목 금 토
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

  • solved.ac
  • BOJ
  • github

티스토리툴바