애드혹 문제 케이스 분리: 반례로 검증하는 법
애드혹 문제에서 경우를 나눠야 하는 순간은 예외가 많아서가 아니라 답의 구조가 바뀌기 때문입니다. 구간 안팎과 원형 거리 예시로 좋은 케이스 분리 기준, 억지 분기를 피하는 법, 경계값 반례 검증법까지 intuition-first로 정리합니다.
애드혹 문제에서 경우를 나눠야 하는 순간은 예외가 많아서가 아니라 답의 구조가 바뀌기 때문입니다. 구간 안팎과 원형 거리 예시로 좋은 케이스 분리 기준, 억지 분기를 피하는 법, 경계값 반례 검증법까지 intuition-first로 정리합니다.
애드혹 문제 parity를 직관적으로 설명합니다. 홀짝 불변성, 이동 횟수 parity, 합의 parity, 배치 가능성 판단, parity 신호를 포착하는 체크리스트까지 예시 중심으로 정리합니다.
정렬 후 스캔이 왜 애드혹 문제에서 자주 통하는지 쉽게 설명합니다. 인접 비교, 구간 정렬, 쌍 맞추기, 선형 스캔까지 순서를 바꾸면 규칙이 보이는 대표 유형을 단계적으로 정리합니다.
누적합과 차분 배열이 각각 언제 필요한지, 구간 합과 구간 업데이트 문제를 어떤 기준으로 나눠 생각해야 하는지, 그리고 difference array를 누적해 실제 배열로 복원하는 흐름까지 쉬운 예시로 설명합니다.
그리디 선택 기준을 어떻게 잡아야 하는지, 반례로 무엇을 걸러야 하는지, 교환 논증으로 왜 맞는지 쉽게 이해할 수 있게 단계적으로 정리합니다.
원형 배열 문제를 쉽게 푸는 법을 정리합니다. modulo 인덱싱, 배열 두 배 확장, 시작점 고정, wrap-around window를 예시로 설명하고 시계·회전·원형 구간 문제의 접근 순서와 실수 포인트까지 함께 짚습니다.