解题思路:
/**
* 自守数是指一个数的平方的尾数等于该数自身的自然数。
* 例如:
* 25^2=625
* 76^2=5776
* 9376^2=87909376
* 请求出200000以内的自守数?
* */
定义变量的数量,sum存储平方,通过判断平方数的大小,利用取余来获取平方后的数,进行暴力破解。
注意事项:
注意输出格式每个输出中间空两个空格,最后没有空格。
参考代码:
public class Main_1144 {
public static void main(String[] args) {
//定义变量
long sum = 0,num=0;
//循环范围0-200000;
for (long i = 0; i <= 200000; i++) {
//计算平方
sum = i*i;
if (i<10){ //如果i小于10,小于谁取余谁。
num=sum%10;
if (num==i){
System.out.print(i+" ");
}
}else if (i<100){ //如果i小于100,小于谁取余谁,下面的依次判断。
num=sum%100;
if (num==i){
System.out.print(i+" ");
}
}else if (i<1000){
num=sum%1000;
if (num==i){
System.out.print(i+" ");
}
}else if (i<10000){
num=sum%10000;
if (num==i){
System.out.print(i+" ");
}
}else if (i<100000){
num=sum%100000;
if (num==i){
System.out.print(i+" ");
}
}else {
num=sum%1000000;
if (num==i){
System.out.print(i);
}
}
}
}
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复