Input: capacity = 2, refillRate = 0.5, requests = [0,0,1,2,4]
Output: [true,true,false,false,true]
Explanation: Capacity 2 is exhausted by the first two calls. At t=1, only 0.5 tokens have refilled (< 1) → reject. At t=2, total refilled = 1.0 → still need to wait (we already rejected at t=1 - the rejection consumes nothing, so at t=2 we have 1.0 token; integer? 1.0 >= 1 → allow!). Re-walk: at t=2, tokens = 0 + 2*0.5 = 1.0 → allow, bucket → 0. At t=4, tokens = 0 + 2*0.5 = 1.0 → allow.