提示:三位数的水仙花数如153 = 1^3 + 5^3 +3^3
370
371
407
package helloworld;
import java.lang.Math.*;
public class sumTest {
public static void main(String[] args) {
//求3位数的水仙花数
for(int i=0;i<10;i++) {
for(int j=0;j<10;j++) {
for(int k=0;k<10;k++) {
if(i!=0 && Math.pow(i,3)+Math.pow(j,3)+Math.pow(k,3) == i*100+j*10+k) {
System.out.println(i*100+j*10+k);
}
}
}
}
//改进后1层循环时间复杂度低
for(int i=100;i<1000;i++) {
int ge = i%10;
int shi = i/10%10;
int bai = i/100;
if(Math.pow(ge,3)+Math.pow(shi, 3)+Math.pow(bai,3) == bai*100+shi*10+ge) {
System.out.println(bai*100+shi*10+ge);
}
}
}
}