Re: [閒聊] 每日leetcode已回收

看板Marginalman作者 (6B)時間1年前 (2024/07/30 19:58), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串594/1554 (看更多)
: https://leetcode.com/problems/minimum-deletions-to-make-string-balanced : ※ 引述《enmeitiryous (enmeitiryous)》之銘言: : : 1653 minimun deletion make string balance 想說先把ab切出來 看起來比較清楚 要斷在哪就把後面的a跟前面的b砍了 不過邊分邊扣好像就好了 不用開n 有多少扣多少 不用的補回去 意思一樣 省流省空間 懶ㄉ改 class Solution { public: int minimumDeletions(string s) { vector<int> a, b; bool sw = true; int cnt = 0; for(char c: s){ if(sw){ if(c == 'a') cnt++; else { a.push_back(cnt); cnt = 1; sw = !sw; } } else{ if(c == 'b') cnt++; else{ b.push_back(cnt); cnt = 1; sw = !sw; } } } if(sw) a.push_back(cnt); else b.push_back(cnt); if(a.size() > b.size()) b.push_back(0); int n = a.size(); int del = accumulate(a.begin(), a.end(), 0) - a[0]; int res = del; for(int i = 1; i < n; i++){ del = del - a[i] + b[i-1]; res = min(res, del); } return res; } }; -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.205.121.194 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1722340692.A.431.html
文章代碼(AID): #1cgDLKGn (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1cgDLKGn (Marginalman)