swift: add «901. Online Stock Span»

Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2024-06-02 11:23:53 +02:00
parent 97fecfe614
commit c02a481db2
Signed by: mfocko
GPG key ID: 7C47D46246790496

View file

@ -0,0 +1,23 @@
class StockSpanner {
private var st: [(Int, Int)] = []
init() {}
func next(_ price: Int) -> Int {
var span = 1
while !st.isEmpty && st.last!.0 <= price {
span += st.last!.1
st.removeLast()
}
st.append((price, span))
return span
}
}
/**
* Your StockSpanner object will be instantiated and called as such:
* let obj = StockSpanner()
* let ret_1: Int = obj.next(price)
*/