Nine 平方怪圈

    技术2022-07-17  96

    如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。 对新产生的正整数再做同样的处理。 如此一来,你会发现,不管开始取的是什么数字, 最终如果不是落入1,就是落入同一个循环圈。 请写出这个循环圈中最大的那个数字。 请填写该最大数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

    public class Main { static int sum; public static void main(String[] args) { int time = 0, max = 0; loop: for (int i = 1; i < 100; i++) { getSum(i); if (time == 1000) { System.out.println(max); break; } else { while (time < 1000) { if (sum == 1) { time = 0; continue loop; } getSum(sum); if (max < sum) { max = sum; } time++; } } } } public static void getSum(int n) { String str = String.valueOf(n); char[] charArrays = str.toCharArray(); sum = 0; for (int i = 0; i < charArrays.length; i++) { sum += Math.pow((int) charArrays[i] - 48, 2); } } }
    Processed: 0.008, SQL: 9