作者JIWP (神楽めあ的錢包)
看板Marginalman
標題Re: [閒聊] 每日leetcode
時間Mon Nov 4 23:22:44 2024
3163. String Compression III
給一個字串word
請依照以下規則壓縮這個字串
(1)把word前面重複的字母刪掉(最多9次)
(2)把字母和次數增加到新的字串 ex: 9a
最後回傳壓縮後的字串
思路:
沒什麼,就照著做就好
這題應該是easy
golang code :
func compressedString(word string) string {
ans, cnt, cur := strings.Builder{}, 1, word[0]
for i := 1; i < len(word); i++ {
if cnt == 9 || cur != word[i] {
ans.WriteByte(byte('0' + cnt))
ans.WriteByte(cur)
cnt, cur = 1, word[i]
} else {
cnt++
}
}
ans.WriteByte(byte('0' + cnt))
ans.WriteByte(cur)
return ans.String()
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.71.212.168 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1730733767.A.BA9.html