您的位置:首页 > 其它

第四届蓝桥排它平方数

2013-05-14 19:39 211 查看
用Java写的,但是我的结果和别人的不一样

 

import java.math.BigInteger;
import java.util.TreeSet;

public class 排他平方数 {

public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i=100000;i<999999;i++){
if(!fun(i)){
continue;
}
BigInteger s = BigInteger.valueOf(i).multiply(BigInteger.valueOf(i));
if(fun2(s,i)){
System.out.println(i);
}
}
}
public static boolean fun(int i){//判断是否有重复的数字 没有返回true,否则返回false
boolean flag = true;
TreeSet<Integer> set = new TreeSet<Integer>();
String ss = i+"";
while(i!=0){
int s = i%10;
set.add(s);
i=i/10;
}
if(set.size()<ss.length()){
flag = false;
}
return flag;
}
public static boolean fun2(BigInteger d, int i){ //判断d是否包含i里面的数字 如果包含返回false 没有包含则返回true
boolean flag = true;
String s = d+"";
String ss = i+"";
for(int j=0;j<ss.length();j++){
if(s.contains(ss.charAt(j)+"")){
flag = false;
}
}
return flag;
}

}


我计算出的答案是:203879    639172
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: