#given
#histogram[top_of_stack] = 6
#index = 1
#stack is empty
area = (histogram[top_of_stack] *
((index - stack[-1] - 1)
if stack else index))
Я просматривал код решения «Самый большой прямоугольник angular Площадь в гистограмме». Там я не смог понять следующий код. почему мы пишем ((index - stack[-1] - 1) if stack else index)
и как это работает? А что, если index = 1
и stack is empty
. Исходный код: https://www.geeksforgeeks.org/largest-rectangle-under-histogram/?ref=lbp Спасибо за любую помощь!