1public int maxNumberOfBalloons(String text) {
2 // Frequency array for all lowercase characters
3 int[] count = new int[26];
4 for (char c : text.toCharArray()) {
5 count[c - 'a']++;
6 }
7
8 // Calculate the minimum number of "balloon" we can form
9 int minBalloons = Integer.MAX_VALUE;
10
11 // Check against required characters
12 minBalloons = Math.min(minBalloons, count['b' - 'a']);
13 minBalloons = Math.min(minBalloons, count['a' - 'a']);
14 minBalloons = Math.min(minBalloons, count['l' - 'a'] / 2);
15 minBalloons = Math.min(minBalloons, count['o' - 'a'] / 2);
16 minBalloons = Math.min(minBalloons, count['n' - 'a']);
17
18 return minBalloons;
19}