猜年龄

/*猜年龄

美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。

一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:

“我年龄的立方是个4位数。我年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。”

请你推算一下,他当时到底有多年轻。
*/

public class Question {
    public static void main(String[] args) {



        int i;
        //根据题意大致判断出年龄
        for ( i = 10; i <70; i++) {

        double b  =i*i*i;
        double c  =Math.pow(i, 4);

        String bs= b+"";
        String cs= c+"";
        String ts=bs.concat(cs);
        //获得字符串的长度
        int bl= bs.length()-2;
        int cl= cs.length()-2;

            if (bl==4 && cl==6 && isNumber(ts)==true ) {

                System.out.println(i);

            }
        }
    }
    public static  boolean isNumber(String s) {
     boolean flage = true;
     for (int i = 0; i <=9; i++) {
        if (!s.contains(i+"")) {
            flage = false;
        }
    }
     return flage;
    }


}

你可能感兴趣的:(java,算法)