Tags

37 pages

Fenwick Tree

[Algorithm] C++ 백준 18227번: 성대나라의 물탱크

루트 C에서 시작하는 트리에서 "A 도시에 물 채우기"는 루트→A 경로의 각 정점 v에 깊이(v)+1 리터를 더합니다. 따라서 임의의 정점 v의 물의 양은 서브트리(v)에서 발생한 갱신 횟수 × (깊이(v)+1)로 환원됩니다. 오일러 투어로 트리를 평탄화하고 펜윅 트리(BIT)로 서브트리 구간의 갱신·질의를 처리해 O((N+Q)logN)에 해결합니다. 경계 입력과 64-bit 오버플로를 주의합니다.
[Algorithm] C++ 백준 18227번: 성대나라의 물탱크

[Algorithm] C++ 백준 12898번 :Selling RNA Strands

백준 12898 Selling RNA Strands 문제를 접두사·접미사 조건을 각각 트라이 서브트리 구간으로 변환하고, 오일러 투어와 펜윅 트리(Fenwick/BIT)를 이용한 2D 직사각형 카운팅으로 M개의 질의를 빠르고 안정적으로 처리하는 C++ 풀이를 정리합니다. 대용량 입력을 위한 Fast I/O와 메모리 사용 최적화 포인트, 시간·공간 복잡도 분석까지 한 번에 확인할 수 있습니다.
[Algorithm] C++ 백준 12898번 :Selling RNA Strands

[Algorithm] C++/Python 백준 24505번 : blobhyperthink

이 글에서는 백준 24505번 'blobhyperthink' 문제를 C++ 및 Python을 활용해 효율적으로 푸는 방법을 다룹니다. 최대 10^5 길이의 수열에서 길이가 11인 증가 부분 수열의 개수를 구하기 위해 동적 계획법과 Binary Indexed Tree(Fenwick Tree)를 활용하는 자세한 알고리즘 설계 및 최적화 과정을, 시간 복잡도와 실제 코드 구현과 함께 150자 내외로 명확하게 설명합니다.
[Algorithm] C++/Python 백준 24505번 : blobhyperthink