2026-01-01 13:06:44 +0300 MSK
RLE Iterator
Links
Code
class RLEIterator:
def __init__(self, encoding: List[int]):
self.i, self.enc, self.length = 0, encoding, len(encoding)
def next(self, n: int) -> int:
while self.i < self.length and n > 0:
count = self.enc[self.i]
if count == 0:
self.i += 2
elif count >= n:
self.enc[self.i] -= n
return self.enc[self.i + 1]
else:
n -= count
self.i += 2
return -1
# Your RLEIterator object will be instantiated and called as such:
# obj = RLEIterator(encoding)
# param_1 = obj.next(n)