901. Online Stock Span [短于线性的时间统计单个元素的Span ]

Span 指这个元素之前连续的小于这个元素的值有多少个
原理:
维护递减栈
这个栈内的元素是递减的序列
新到一个元素x 依次出栈比x小的(也就是这个元素的Span)

这种问题的关键在于 新来的元素如果比前一个元素小 那么答案是1
如果比前一个元素大 ( 那么前一个元素在之后就完全没有用了, 所以可以出栈, 使用现有的元素进行意义的记录 )

相关题目

  1. Unique Letter String
  2. Sum of Subsequence Widths

907
907是求一个双向的Span 但是有一个重复元素的问题,
我们这里只需要 两遍采取不同的等号即可

还有 10e9 + 7 是浮点型的 应该用 10**9 + 7

猜你喜欢

转载自www.cnblogs.com/sfzyk/p/9656435.html
今日推荐