/*
*
美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。
一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:
“我年龄的立方是个4位数。我年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。”
我知道这个可以推算出来,我要看的是代码,谢谢了
*/
用hashset,里面无重复元素的特点
import java.util.HashSet;
import java.util.Set;
public class age{
public static void main(String[] args) {
for(int age=11;age<=100;age++) {
//age是整形 后面加""是转为String,也可以用String.valueof
String age3=age*age*age+"";
String age4=age*age*age*age+"";
if(age3.length()==4&&age4.length()==6&&check(age3,age4)) {
System.out.println(age);
break;
}
}
}
public static boolean check(String age3,String age4) {
String str=age3+age4;
Set<Character>set=new HashSet<Character>();
for(int i=0;i<str.length();i++) {
set.add(str.charAt(i));
}
return set.size()==10;
}
}