题目描述
3025这个数具有一种独特的性质:将它平分为二段,即30和25,使之相加后求平方,即3025=(30+25)2,恰好等于3025本身。请求出具有这样性质的全部四位数
输出
满足题意的数全部四位数(从小到大输出,且数之间用两个空格分开)
样例输出
2025 3025 9801
提示
根据题意可以采用穷举法,对所有四位数进行判断,从而筛选出符合这种性质的四位数。具体算法实现,可任取一个四位数,将其截为两部分,前两位为a,后两位为b,然后套用公式计算并判断。
public class Main
{
public static void main(String[] args)
{
int i;
for(i=1000;i<=9999;i++)
{int a,b,c,d;
a=i%10;b=i/10%10;c=i/100%10;d=i/1000;
if((b*10+a+d*10+c)*(b*10+a+d*10+c)==i)
System.out.print(String.format("%d ",i));
else
continue;
}
}
}