62,614
社区成员
发帖
与我相关
我的任务
分享
public static boolean isKiller(int n) {
long a=n*n*n;
long b=0;
long result=0;
boolean flag = false;
for(int i=0;i<1000;i++) {
for(int j=i+1;j<48+i;j++) {
b=b+j*j;
}
result=b;
b=0;
}
if(a==result) //问题是这里在调试里面已经显示a和result相等了 但是flag却还是flase 这是为什么呢
flag=true;
flag=false;
return flag;
}
public static boolean isKiller(int n) {
long a=n*n*n;
long b=0;
long result=0;
for(int i = 0; result <= a; i++)
for(int j=i+1;j<48+i;j++) {
b=b+j*j;
}
result=b;
if(result == a){
return true;
}
b=0;
}
return false;
}
public static boolean isKiller(int n) {
long a=n*n*n;
boolean flag=false;
long result=0;
for(int i=0;i<1000;i++){
for(int j=i+1;j<48+i;j++)
result+=j*j;
if(a==result){
flag=true;
break;
}
result=0;
}
return flag;
}