What The Left Move Discards

Sorted array a = [1, 4, 5, 7, 11], target x = 16. Opposite-direction pointers start at l = 0 and r = 4. Since a[0] + a[4] = 12 < 16, the algorithm executes l += 1.

Which pairs does that single step rule out, and on what grounds?

A

Nothing is ruled out; l += 1 is a heuristic, and the l < r loop condition is what keeps the search complete

B

Every pair that uses a[0], because a[4] is the largest partner a[0] will ever be offered and even that sum falls short

C

Only the pair (a[0], a[4]); the other pairs involving a[0] are still reachable later, once r has moved left

D

Every pair that uses a[4], because a[0] is the smallest partner available and the sum was still too small