立方尾不变
有些数字的立方的末尾正好是该数字本身。
比如:1,4,5,6,9,24,25,....
请你计算一下,在10000以内的数字中(指该数字,并非它立方后的数值),符合这个特征的正整数一共有多少个。
请提交该整数,不要填写任何多余的内容。
解题思路:类型这种题,我的做法是直接暴力破解,在一个10000次循环里面进行处理,对每一个数字进行求模,得出倍数,这样就可以获得立方后的末尾,最后再进行比较判断。
public class Main {
public static void main(String[] args) {
// 满足情况的个数
int sum = 0;
for (int i = 1; i < 10000; i++) {
// 求出立方数
int n = (int) Math.pow(i, 3);
// 初始化倍数为10
int mul = 10;
// 定义一个中间数来代替i进行计算,防止i的值被改变
int temp = i;
// 求出倍数
while (temp / 10 != 0) {
mul *= 10;
temp /= 10;
}
// 将立方数的末尾跟i进行比对
if (n % mul == i) {
sum++;
}
}
System.out.println(sum);
}
}
输出结果:27