Leetcode 1189. “氣球” 的最大數量
阿新 • • 發佈:2021-05-07
Leetcode 1189. “氣球” 的最大數量
題目
給你一個字串 text,你需要使用 text 中的字母來拼湊儘可能多的單詞 "balloon"(氣球)。
字串 text 中的每個字母最多隻能被使用一次。請你返回最多可以拼湊出多少個單詞 "balloon"。
示例 1:
輸入:text = "nlaebolko"
輸出:1
示例 2:
輸入:text = "loonbalxballpoon"
輸出:2
示例 3:
輸入:text = “leetcode”
輸出:0
思路
- 用map存放balloon對應的字元和出現的次數
- 使用strings.Count函式統計text字串的對應的出現的次數
- 取每個字元的拼湊值的最小值即可
程式碼 —— golang
func maxNumberOfBalloons(text string) int { res := math.MaxInt32 str := map[string]int { "b": 1, "a": 1, "l": 2, "o": 2, "n": 1, } for ch, mod := range str { count := strings.Count(text, string(ch)) res = int(math.Min(float64(res), float64(count / mod))) } return res }