第四届蓝桥杯 软件类省赛真题 第一题:猜年龄

标题: 猜年龄




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


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


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


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


    通过浏览器,直接提交他那时的年龄数字。
    注意:不要提交解答过程,或其它的说明文字。
=======================================================
答案:18
思路:
年龄3次方4位数,4次方6位数,10个数包含0~9(仅出现一次)


想用最快捷的解决方式
穷举:数字0-100
筛选:3次方是4位数,4次方是个6位数的数。
打印:出来,查找刚好包含了从0到9这10个数字,挑出来即可。


粗糙的程序:
package com.aiqiongdiao;
public class Main {
	public static void main(String[] args) {
		for(int a=1;a<100;a++){  //我觉得他的年龄是1~100
			if(a*a*a>999&&a*a*a<10000){ //四位数的筛选
				if(a*a*a*a>99999&&a*a*a*a<1000000){ //六位数的筛选
					System.out.println(a*a*a+""+a*a*a*a); //我比较懒,不用计算机contine找,自己找
					System.out.println(a);   //输出年龄多少
				}
			}
		}
	}
}




粗糙的打印:
5832104976
18
6859130321
19
8000160000
20
9261194481
21


高级的人工筛选结果:
5832104976
18

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值