Your question is Debounce or Throttle Input Events. Start with the requirements on the right.
Run and submit as often as you like. When you're ready, talk me through your approach or go straight to the code.
Macromill's Questant interface should avoid processing every keystroke in an input field. Implement a function that simulates either debouncing or leading-edge throttling for an ordered stream of input events.
Each event contains a timestamp and a value. Return the values that would be processed by the application.
Implement process_events(events, wait, mode):
events is a list of [timestamp, value] pairs sorted by nondecreasing integer timestamp.wait is a positive integer number of time units.mode is either `def process_events(events, wait, mode):