LeetCode 1189. “气球” 的最大数量题解
题解
2022.02.13 每日一题
统计字符串中可以组成”balloon”的数量,挺简单的,只需要统计出来字符串中有多少组可以完整组成 balloon 单词的组数就可以了。
具体代码以及注释如下:
class Solution { public: int maxNumberOfBalloons(string text) { // 新建一个数组用来统计 b、a、l、o、n 各个字符的数量 vector<int> cnt(5, 0); // 筛选出各个字符,并且统计数量 for (char ch: text) { if (ch == b) { cnt[0]++; } else if (ch == a) { cnt[1]++; } else if (ch == l) { cnt[2]++; } else if (ch == o) { cnt[3]++; } else if (ch == n) { cnt[4]++; } } // 由于单词 balloon 之中,有两个 l 、 o 组成所以需要除以 2 来判断个数 cnt[2] /= 2; cnt[3] /= 2; // 对数组进行排序,返回数组之中的最小值,即为组成 balloon 单词的最小数量 sort(cnt.begin(), cnt.end()); return cnt[0]; } };
class Solution { public int maxNumberOfBalloons(String text) { // 新建一个数组用来统计 b、a、l、o、n 各个字符的数量 int[] cnt = new int[5]; // 筛选出各个字符,并且统计数量 for (int i = 0; i < text.length(); i++) { char ch = text.charAt(i); if (ch == b) { cnt[0]++; } else if (ch == a) { cnt[1]++; } else if (ch == l) { cnt[2]++; } else if (ch == o) { cnt[3]++; } else if (ch == n) { cnt[4]++; } } // 由于单词 balloon 之中,有两个 l 、 o 组成所以需要除以 2 来判断个数 cnt[2] /= 2; cnt[3] /= 2; // 对数组进行排序,返回数组之中的最小值,即为组成 balloon 单词的最小数量 Arrays.sort(cnt); return cnt[0]; } };
下一篇:
likou24链表元素两两交换