소파와 바보개의 블로그

  • 홈
  • 태그
  • 방명록

sparse table 1

19. 희소 배열 (Sparse table, c++)

희소 배열 (Sparse table)?앞서 구간에 대한 합계를 Prefix Sum을 이용해 계산을 했다면, 구간에 대해 최소값 또는 최대값을 계산하는 것은 조금 더 복잡한 문제입니다. Sparse table 을 이용하면 O(nlogn)의 전처리 이후 구간에 대한 최소값과 최대값을 구하는 것을 O(1) 시간복잡도로 수행할 수 있습니다. Sparse 라는 단어는 가능한 모든 구간을 저장하는 것이 아니라, 2의 거듭제곱 길이의 구간만 저장하기 때문에 붙여진 이름입니다. 모든 정수는 2의 거듭제곱을 한번씩 사용해서 표현할 수 있습니다.  당연하게도 모든 정수들은 이진수로 표현할 수 있고 7은 111, 9는 1001 이기 때문입니다.  예를 들면, 7은 4+2+1 이고 9는 8+1 과 같은 형태입니다. 이러한 원..

Competitive Programming 2025.03.28
이전
1
다음
더보기
프로필사진

소파와 바보개의 블로그

boj, 코딩 테스트, competitive programming, sw engineer

  • 분류 전체보기 (38)
    • Competitive Programming (20)
    • 문제풀이 (18)

Tag

Two pointers, Sort, two pointer, complete search, Compression, sliding window, fenwick tree, Lis, time complexity, Prefix Sum, sparse table, competitive programming, Platinum, Dynamic Programming, Greedy Algorithm, nearest smaller elements, Range Query, binary search, Stack, Gold,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/07   »
일 월 화 수 목 금 토
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.

티스토리툴바