美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。 一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,他回答说:我年龄的立方是个4位数。 我年龄的4次方是个6位数。这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。” 请你推算一下,他当时到底有多年轻。 结果只有一个数。
#include<stdio.h>
int main(){
int age=1;
int san=0;
int si=0;
int sum=0;
while(age>0)
{
san=age*age*age;
si=age*age*age*age;
int t1,t2,t3,t4;
int f1,f2,f3,f4,f5,f6;
t1=san/1000;
t2=(san-t1*1000)/100;
t3=(san-t1*1000-t2*100)/10;
t4=san-t1*1000-t2*100-t3*10;
f1=si/100000;
f2=(si-f1*100000)/10000;
f3=(si-f1*100000-f2*10000)/1000;
f4=(si-f1*100000-f2*10000-f3*1000)/100;
f5=(si-f1*100000-f2*10000-f3*1000-f4*100)/10;
f6=si-f1*100000-f2*10000-f3*1000-f4*100-f5*10;
sum=t1+t2+t3+t4+f1+f2+f3+f4+f5+f6;
if(sum==45){
printf("%d",age);
break;
}else{
age++;
}
}
}
//劣质代码,不值一看,如有好建议,请回复。