From a96b65cbfad7f62f3db6b2eab105e4e25c0414c5 Mon Sep 17 00:00:00 2001 From: Jack Sangdahl Date: Fri, 27 Jun 2025 12:23:02 -0600 Subject: chore: remove old cpp and rust solutions --- other/online_stock_span.rs | 51 ---------------------------------------------- 1 file changed, 51 deletions(-) delete mode 100644 other/online_stock_span.rs (limited to 'other/online_stock_span.rs') diff --git a/other/online_stock_span.rs b/other/online_stock_span.rs deleted file mode 100644 index a967028..0000000 --- a/other/online_stock_span.rs +++ /dev/null @@ -1,51 +0,0 @@ -// 901. Online Stock Span - -/* - * design an algorithm that collects daily price quotes for some stock and - * returns the span of that stock's price for the current day. the span of the - * stock's price in one day is the maximum number of consecutive days (starting - * from that day and going backward) for which the stock price was less than or - * equal to the price of that day. if the prices of the stock in the last four - * days is '[7,34,1,2]' and the price of the stock today is 8, then the span of - * today is 3 because starting from today, the price of the stock was less than - * or equal 8 for 3 consecutive days. - */ - -struct Span { - price: i32, - days: i32, -} - -struct StockSpanner { - spans: Vec, -} - -impl StockSpanner { - fn new() -> Self { - StockSpanner { spans: Vec::new() } - } - fn next(&mut self, price: i32) -> i32 { - let mut days = 1; - while let Some(span) = self.spans.last() { - if span.price <= price { - days += span.days; - self.spans.pop(); - } else { - break; - } - } - self.spans.push(Span { price, days }); - days - } -} - -fn main() { - let mut obj = StockSpanner::new(); - println!("{}", obj.next(100)); - println!("{}", obj.next(80)); - println!("{}", obj.next(60)); - println!("{}", obj.next(70)); - println!("{}", obj.next(60)); - println!("{}", obj.next(75)); - println!("{}", obj.next(85)); -} -- cgit v1.2.3