我是靠谱客的博主 秀丽枕头,最近开发中收集的这篇文章主要介绍【Leetcode算法题 ---- 猜年龄】 一起来打卡学习Leetcode算法题 ---- 猜年龄引言题目解题结语,觉得挺不错的,现在分享给大家,希望可以做个参考。
概述
Leetcode算法题 ---- 猜年龄
引言
更新一篇算法题,以后博主会开算法题专栏,我们每日一题,一起向大厂前进,加油
题目
美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。
一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄,
他回答说:“我年龄的立方是个4位数。我年龄的4次方是个6位数。
这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。”
请你推算一下,他当时到底有多年轻。
解题
public static void main(String[] args){
for (int i = 1; i < 100; i++) {
//年龄4位数的筛选
if (i*i*i > 999 && i*i*i < 10000) {
for (int j = 1; j < 100; j++) {
if (j*j*j*j > 99999 && j*j*j*j < 1000000) {
String res = i*i*i+""+j*j*j*j;
String[] split = res.split("");
Integer result = arrayIsReplay(split);
if (result == 0) {
System.out.println("美国数学家维纳(N.Wiener)的年龄为:"+i);
}
}
}
}
}
}
/**
* 判断数组是否有重复元素
* @param res 传入的数组
* @return 没有的话返回0,有的话则返回重复的个数
*/
public Integer arrayIsReplay(String[] res) {
int result = 0;
for (int i = 0; i < res.length; i++) {
for (int j = 0; j < i; j++) {
if (res[j].equals(res[i])) {
result ++;
continue;
}
}
}
return result;
}
控制台输出:
美国数学家维纳(N.Wiener)的年龄为:18岁
结语
本题目是一个简单的算法题,其中,用到了数组去重,10位数字互不相同,这个简单的算法题,是入阶算法的基础,通过练习大量的基础,巩固自己的算法题解决能力,提高逻辑思维,一起变得越来越好,加油!
最后
以上就是秀丽枕头为你收集整理的【Leetcode算法题 ---- 猜年龄】 一起来打卡学习Leetcode算法题 ---- 猜年龄引言题目解题结语的全部内容,希望文章能够帮你解决【Leetcode算法题 ---- 猜年龄】 一起来打卡学习Leetcode算法题 ---- 猜年龄引言题目解题结语所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复