LeetCode 2202. K 次操作后最大化顶端元素
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 2202. K 次操作后最大化顶端元素
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目
- 2. 解題
1. 題目
給你一個下標從 0 開始的整數數組 nums ,它表示一個 棧 ,其中 nums[0] 是棧頂的元素。
每一次操作中,你可以執行以下操作 之一 :
- 如果棧非空,那么 刪除 棧頂端的元素。
- 如果存在 1 個或者多個被刪除的元素,你可以從它們中選擇任何一個,添加 回棧頂,這個元素成為新的棧頂元素。
同時給你一個整數 k ,它表示你總共需要執行操作的次數。
請你返回 恰好 執行 k 次操作以后,棧頂元素的 最大值 。如果執行完 k 次操作以后,棧一定為空,請你返回 -1 。
示例 1: 輸入:nums = [5,2,2,4,0,6], k = 4 輸出:5 解釋: 4 次操作后,棧頂元素為 5 的方法之一為: - 第 1 次操作:刪除棧頂元素 5 ,棧變為 [2,2,4,0,6] 。 - 第 2 次操作:刪除棧頂元素 2 ,棧變為 [2,4,0,6] 。 - 第 3 次操作:刪除棧頂元素 2 ,棧變為 [4,0,6] 。 - 第 4 次操作:將 5 添加回棧頂,棧變為 [5,4,0,6] 。 注意,這不是最后棧頂元素為 5 的唯一方式。但可以證明,4 次操作以后 5 是能得到的最大棧頂元素。示例 2: 輸入:nums = [2], k = 1 輸出:-1 解釋: 第 1 次操作中,我們唯一的選擇是將棧頂元素彈出棧。 由于 1 次操作后無法得到一個非空的棧,所以我們返回 -1 。提示: 1 <= nums.length <= 10^5 0 <= nums[i], k <= 10^9來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/maximize-the-topmost-element-after-k-moves
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
- 分類討論
100 ms 61.9 MB C++
我的CSDN博客地址 https://michael.blog.csdn.net/
長按或掃碼關注我的公眾號(Michael阿明),一起加油、一起學習進步!
總結
以上是生活随笔為你收集整理的LeetCode 2202. K 次操作后最大化顶端元素的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 2080. 区间内查询
- 下一篇: LeetCode 1660. 纠正二叉树