一千萬以內的自守數
阿新 • • 發佈:2018-11-01
求一千萬以下的自守數 如 5*5=25 25*25=625 如果有n由k位數構成 那麼n的平方的末尾k位數必須和n相等 並且變數只能用證書
/** * 思路:n的平方對整的x次冪取餘結果是n,則滿足條件 * 例5*5=25 25%10=5 * 625*625=390625 625%(10*10*10)=625 * @author yx * * 2017-9-25 */ public class Test { public static void main(String[] args) { for (int j = 0; j < 10000000; j++) { for (int i = 1; i < String.valueOf(j).length(); i++) { if (Math.pow(j % (Math.pow(10, i)), 2) == j) { System.out.println(j + "," + (int) (j % (Math.pow(10, i)))); break; } } } } }
結果:
25,5
36,6
625,25
5776,76
141376,376
390625,625