Re: [閒聊] 每日LeetCode

看板Marginalman作者 (みけねこ的鼻屎)時間1年前 (2023/12/27 11:19), 編輯推噓0(002)
留言2則, 2人參與, 1年前最新討論串586/719 (看更多)
https://leetcode.com/problems/minimum-time-to-make-rope-colorful/description 1578. Minimum Time to Make Rope Colorful 給你一個字串陣列 colors 表示氣球顏色,neededTime[] 表示移除特定位置氣球所需的 時間,求出最少要花多少時間可讓所有相鄰氣球不同色。 思路: 1.要對一個隊列分組,假如隊列是 aa bbb cc 就是要取: aa除了最大時間外的和 + bbb 除了最大時間外的和 + cc ....,如果沒連續氣球就不管。 2.判斷前一個氣球是不是同色,如果是的話就加上耗時比較小的做為成本,並記住先前 耗時最大保留的氣球,如果不同色的話重置最大成本為當前耗時,遍歷到底即可。 Java Code: ----------------------------------------- class Solution { public int minCost(String colors, int[] neededTime) { int res = 0; int prevTime = neededTime[0]; for (int i = 1; i < colors.length(); i++) { if (colors.charAt(i) == colors.charAt(i - 1)) { res += Math.min(prevTime, neededTime[i]); prevTime = Math.max(prevTime, neededTime[i]); } else { prevTime = neededTime[i]; } } return res; } } ----------------------------------------- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.100.73.13 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1703647142.A.B25.html

12/27 11:20, 1年前 , 1F
大師
12/27 11:20, 1F

12/27 11:27, 1年前 , 2F
大師
12/27 11:27, 2F
文章代碼(AID): #1bYvUcib (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1bYvUcib (Marginalman)