From 370c942697af01d98eda0877fd16c828bd53e11a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=98=A0=E8=BE=89?= <3385297953@qq.com> Date: Tue, 16 Sep 2025 22:12:10 +0800 Subject: [PATCH 1/3] 2025.9.16 --- ..._\351\231\210\346\230\240\350\276\211.cpp" | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 "topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" diff --git "a/topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" "b/topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" new file mode 100644 index 0000000..652032b --- /dev/null +++ "b/topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" @@ -0,0 +1,21 @@ +class Solution { +public: + vector canSeePersonsCount(vector& heights) { + int n=heights.size(); + vectorstk; + vectorans(n, 0); + + for(int i=n-1;i>=0;i--){ + int h1=heights[i]; + while(!stk.empty()&&stk.back() Date: Sat, 20 Sep 2025 13:46:20 +0800 Subject: [PATCH 2/3] 2025.9.20 --- ..._\351\231\210\346\230\240\350\276\211.cpp" | 21 +++++++++++++++++ ..._\351\231\210\346\230\240\350\276\211.cpp" | 23 +++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 "exercise/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" create mode 100644 "exercise/LC 42_\351\231\210\346\230\240\350\276\211.cpp" diff --git "a/exercise/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" "b/exercise/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" new file mode 100644 index 0000000..652032b --- /dev/null +++ "b/exercise/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" @@ -0,0 +1,21 @@ +class Solution { +public: + vector canSeePersonsCount(vector& heights) { + int n=heights.size(); + vectorstk; + vectorans(n, 0); + + for(int i=n-1;i>=0;i--){ + int h1=heights[i]; + while(!stk.empty()&&stk.back()& height) { + int n =height.size(); + stackst; + int nums=0; + for(int i=0;iheight[st.top()]){ + int topIdx=st.top(); + st.pop(); + if(st.empty()){ + break; + } + int l = st.top(); + int currWigth = i-l-1; + int currHeight = min(height[l],height[i])-height[topIdx]; + nums += currWigth * currHeight; + } + st.push(i); + } + return nums; + } +}; -- Gitee From d5aba46323360e5d97286ac6451df61d7e6e52ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=98=A0=E8=BE=89?= <3385297953@qq.com> Date: Sun, 21 Sep 2025 23:04:47 +0800 Subject: [PATCH 3/3] 2025.9.21 --- ..._\351\231\210\346\230\240\350\276\211.cpp" | 21 ------------------ ..._\351\231\210\346\230\240\350\276\211.cpp" | 22 +++++++++++++++++++ ..._\351\231\210\346\230\240\350\276\211.cpp" | 17 ++++++++++++++ ..._\351\231\210\346\230\240\350\276\211.cpp" | 17 ++++++++++++++ 4 files changed, 56 insertions(+), 21 deletions(-) delete mode 100644 "topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" create mode 100644 "topic01/submit/LC 496_\351\231\210\346\230\240\350\276\211.cpp" create mode 100644 "topic01/submit/LC 503_\351\231\210\346\230\240\350\276\211.cpp" create mode 100644 "topic01/submit/LC 739_\351\231\210\346\230\240\350\276\211.cpp" diff --git "a/topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" "b/topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" deleted file mode 100644 index 652032b..0000000 --- "a/topic01/submit/LC 1944_\351\231\210\346\230\240\350\276\211.cpp" +++ /dev/null @@ -1,21 +0,0 @@ -class Solution { -public: - vector canSeePersonsCount(vector& heights) { - int n=heights.size(); - vectorstk; - vectorans(n, 0); - - for(int i=n-1;i>=0;i--){ - int h1=heights[i]; - while(!stk.empty()&&stk.back() nextGreaterElement(vector& nums1, vector& nums2) { + int n1=nums1.size(); + int n2=nums2.size(); + stackst; + unordered_maphash; + vectorans(n1); + for(int i=n2-1;i>=0;--i){ //单调栈 + int num=nums2[i]; + while(!st.empty() && num>=st.top()){ + st.pop(); + } + hash[num]=st.empty()?-1:st.top(); + st.push(num); //单调栈结束,把答案存入哈希表 + } + for(int i=0;i nextGreaterElements(vector& nums) { + int n=nums.size(); + stackst; + vectorres(n,-1); + for(int i=0;inums[st.top()]){ + int topIdx=st.top(); + st.pop(); + res[topIdx]=nums[i%n]; + } + st.push(i%n); + } + return res; + } +}; diff --git "a/topic01/submit/LC 739_\351\231\210\346\230\240\350\276\211.cpp" "b/topic01/submit/LC 739_\351\231\210\346\230\240\350\276\211.cpp" new file mode 100644 index 0000000..4e110fd --- /dev/null +++ "b/topic01/submit/LC 739_\351\231\210\346\230\240\350\276\211.cpp" @@ -0,0 +1,17 @@ +class Solution { +public: + vector dailyTemperatures(vector& temperatures) { + int n=temperatures.size(); + vectorans(n,0); + stackst; + for(int i=0;itemperatures[st.top()]){ + int topIdx=st.top(); + ans[topIdx]=i-topIdx; + st.pop(); + } + st.push(i); + } + return ans; + } +}; -- Gitee