【Leetcode 每日一题】1399. 统计最大组的数目-具体实现

时间:2025-04-25 07:21:29
class Solution {
    public int countLargestGroup(int n) {
        int[] count = new int[String.valueOf(n).length() * 9 + 1];
        int max = 0;
        int res = 0;
        for (int i = 1; i <= n; i++) {
            int cur = calc(i);
            count[cur]++;
            if (count[cur] > max) {
                max = count[cur];
                res = 1;
            } else if (count[cur] == max) {
                res++;
            }
        }
        return res;
    }

    private int calc(int num) {
        int res = 0;
        while (num > 0) {
            res += num % 10;
            num /= 10;
        }
        return res;
    }
}