From 0064d158445f18698752f2937820177b265b0021 Mon Sep 17 00:00:00 2001 From: Prad Nukala Date: Fri, 28 Aug 2026 15:05:53 -0400 Subject: [PATCH] feat(work): add Daily Temperatures solution --- work/Medium/Array/739.daily-temperatures.py | 50 +++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 work/Medium/Array/739.daily-temperatures.py diff --git a/work/Medium/Array/739.daily-temperatures.py b/work/Medium/Array/739.daily-temperatures.py new file mode 100644 index 0000000..00728d8 --- /dev/null +++ b/work/Medium/Array/739.daily-temperatures.py @@ -0,0 +1,50 @@ +""" +739. Daily Temperatures +Difficulty: Medium +https://leetcode.com/problems/daily-temperatures/ + +────────────────────────────────────────────────── + +Given an array of integers temperatures represents the daily +temperatures, return an array answer such that answer[i] is the number +of days you have to wait after the i^th day to get a warmer +temperature. If there is no future day for which this is possible, +keep answer[i] == 0 instead. + + + +Example 1: + +Input: temperatures = [73,74,75,71,69,72,76,73] +Output: [1,1,4,2,1,1,0,0] + +Example 2: + +Input: temperatures = [30,40,50,60] +Output: [1,1,1,0] + +Example 3: + +Input: temperatures = [30,60,90] +Output: [1,1,0] + + + +Constraints: + + • 1 <= temperatures.length <= 10^5 + + • 30 <= temperatures[i] <= 100 +""" + + +class Solution: + def dailyTemperatures(self, temperatures: List[int]) -> List[int]: + ans = [0] * len(temperatures) + stack = [] + for i, temp in enumerate(temperatures): + while stack and temperatures[stack[-1]] < temp: + prev = stack.pop() + ans[prev] = i - prev + stack.append(i) + return ans