While building an in-memory component for a HashedIn by Deloitte service, you need a stack that can report its current maximum value efficiently. Implement max_stack so that every push, pop, and max operation runs in constant time.
The input is a list of operations. Each operation is represented as a list:
["push", value] adds an integer to the stack and produces no output.["pop"] removes and returns the top value.["max"] returns the largest value currently in the stack without removing it.Return a list containing the results of every pop and max operation, in execution order. Inputs will never attempt pop or max on an empty stack.
def max_stack(operations):