美国数学家维纳智力早熟,11岁就上了大学,他曾在1935-1936年 应邀参加中国清华大学讲学,一次他参加某个重要会议,年轻的脸孔 引人注意,于是有人询问他的年龄,他回答说“我年龄的立方是个4位数

package day01;

import java.util.HashSet;
import java.util.Set;

/**标题:猜年龄
 * 美国数学家维纳智力早熟,11岁就上了大学,他曾在1935-1936年
 *应邀参加中国清华大学讲学,一次他参加某个重要会议,年轻的脸孔
 *引人注意,于是有人询问他的年龄,他回答说“我年龄的立方是个4位数。
 *我年龄的4次方是个6位数,这10个数字 正好包含了从0到9这10个数字,
 *每个都恰好出现1次”  请你推算他当时有多年轻 
 * 
 */
public class _01猜年龄 {
    
    
public static void main(String[] args) {
    
    
	for(int i = 10;i<100;i++) {
    
    
		int i1=i*i*i;//年龄的三次方
		int i2=i1*i;//年龄的四次方
		String s1=i1 + "";//转成字符串
		String s2=i2 + "";
		
		//判断数字的长度
		if(s1.length()==4&&s2.length()==6&&check(s1+s2)) {
    
    
			System.out.println(i);
			break;
		}
	}
}
private static boolean check(String s) {
    
    
	Set<Character> set=new HashSet<Character>();//去重
	for (int i = 0; i < s.length(); i++) {
    
    
		set.add(s.charAt(i));
	}
	return set.size()==10;
}
}

猜你喜欢

转载自blog.csdn.net/weixin_46457946/article/details/114337869
今日推荐