class Stack : 

    def __init__(self):
        self.elements = [] # list 

    def push(self , newElement):
        self.elements.append(newElement)

    def pop(self):
        return self.elements.pop(-1)

stack1 = Stack() 

stack1.push(20)
stack1.push(34)

print(stack1.elements)

# stack1.remove(20)

lst1 = list() 

lst1.append(20)
lst1.append(34)

print(lst1)

lst1.remove(20)

print(lst1)

image.png

image.png

image.png


class Stack : 

    def __init__(self):
        self.elements = [] # list 

    def push(self , newElement):
        self.elements.append(newElement)

    def peak(self):
        return self.elements[-1]

    def pop(self):
        return self.elements.pop(-1)

    def isEmpty(self):
        return len(self.elements) == 0 

stack1 = Stack() 

lst = [10,8,5,6,4,7,9]

answer = [] 

for i in range(1,len(lst)):

    for j in range(i) : 
        stack1.push(lst[j])

    count = 0 

    current = stack1.peak()

    while not stack1.isEmpty() : 
        count += 1 
        stack1.pop()

        if not stack1.isEmpty() : 
            if current < stack1.peak() :
                break

    answer.append(count)

    stack1.elements = []

print(answer)

image.png