어려움
Range Sum Query 2D - Mutable
코드 라인과 단계 ID를 동기화하고, 변수/포인터/배열·행렬·그래프 엔티티의 상태 스냅샷을 단계마다 갱신한다.
1 / 10구간 합을 매번 다시 더하면 O(n)씩 듭니다. 접두사 합을 한 번 만들어 두면 어떤 구간이든 뺄셈 한 번입니다.
원본
31415926
접두사 합 — "처음부터 여기까지"
단계 목록 · 키보드 ←/→ 이동, Space 재생
구현 계약펼쳐서 명세 보기 · 참고 자료
- 분류
- BIT / Segment Tree · dsa-workbench
- 구현 핵심
- 코드 라인과 단계 ID를 동기화하고, 변수/포인터/배열·행렬·그래프 엔티티의 상태 스냅샷을 단계마다 갱신한다.
- 의도
- Range Sum Query 2D - Mutable의 입력·판단·결과 변화를 BIT / Segment Tree 관점에서 단계별로 시각화한다.
- 입력 프리셋
- tree[
- 입력 검증
- 상세 청크의 유효성 함수 적용
- 언어/코드
- java, python, cpp, csharp, go, javascript, typescript; 코드 템플릿 있음; 단계↔라인 키 -, init, build_cell, build_propagate, update_start, update_delta, update_propagate_row, update_propagate_col, prefix_start, prefix_accumulate, prefix_done, sum_region, inclusion_exclusion, complete
- 단계 모델
- 초기 프리셋 단계 수 동적; 기록 ID update_propagate_col, update_propagate_row, -, init, build_cell, build_propagate, update_start, update_delta, sum_region, prefix_start, prefix_accumulate, prefix_done, inclusion_exclusion, complete
- 시각 상태
- 엔티티 matrixElement, 2DPointer, update, sumRegion; 상태/단계 값 build
- 화면 옵션
- 입력 패널 있음, 시각화 있음, 변수표 숨김, 전체화면 지원