Mental Model
We want to find the largest product of a continuous part of the array. Because negative numbers can flip the sign, we keep track of both the biggest and smallest products so far.
Analogy: Imagine walking on a path where stepping on a slippery stone (negative number) can flip your direction. To know the farthest you can go forward, you remember both your best forward and backward steps.
Array: [2, 3, -2, 4] Index: 0 1 2 3 Track max_prod and min_prod at each step: Start: max_prod=2, min_prod=2, result=2
