Given a string text
, you want to use the characters of text
to form as many instances of the word "balloon" as possible.
You can use each character in text
at most once. Return the maximum number of instances that can be formed.
Example 1:
Input: text = "nlaebolko"
Output: 1
Example 2:
Input: text = "loonbalxballpoon"
Output: 2
Example 3:
Input: text = "leetcode"
Output: 0
Constraints:
1 <= text.length <= 104
text
consists of lower case English letters only.
Solution:
Making use of HashMap, getOrDefault() method to resolve the problem.
Approaches:
- Create a HashMap m
- Count the frequency of individual letters in String text, and storing it into m.
- Create Character String to store balloon characters, e.g. b, a, l, o, n.
- Count the occurrence of the individual characters in text, especially l & o. If appearing twice, then divide it by half and storing the counting result into min_freq.
Time complexity: O(N)