언제
정렬·회문·쌍 합·구간을 한 번 훑으며 좁힐 때.
양끝
let L = 0, R = a.length - 1;
while (L < R) {
const s = a[L] + a[R];
if (s === target) return true;
if (s < target) L++;
else R--;
}
같은 방향
느린/빠른 포인터, 또는 왼쪽을 고정하고 오른쪽만 전진.
함정
정렬 전제인지, 중복 처리, L < R vs L <= R.
한 줄
> 정렬·단조 성질이 있으면 투포인터 후보.