豆包ai程序4

50 阅读1分钟

问题描述

一个整数如果由相同的数字构成,则称为完美整数。例如:

  • 111333 是完美整数。
  • 1219101 是不完美整数。

现在,你需要计算给定区间 [x, y] 中有多少个整数是完美整数。 程序

public class Main { public static int solution(int x, int y) { int count = 0; for (int i = x; i <= y; i++) { if (isPerfectNumber(i)) { count++; } } return count; }

// 辅助方法:判断一个数是否是完美整数
private static boolean isPerfectNumber(int num) {
    String numStr = String.valueOf(num);
    char firstChar = numStr.charAt(0);
    for (char c : numStr.toCharArray()) {
        if (c != firstChar) {
            return false;
        }
    }
    return true;
}

public static void main(String[] args) {
    System.out.println(solution(1, 10) == 9);
    System.out.println(solution(2, 22) == 10);
}

}