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;
}
}