Leetcode算法题 ---- 猜年龄
引言
更新一篇算法题,以后博主会开算法题专栏,我们每日一题,一起向大厂前进,加油
题目
复制代码
1
2
3
4
5
6美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在1935~1936年应邀来中国清华大学讲学。 一次,他参加某个重要会议,年轻的脸孔引人注目。于是有人询问他的年龄, 他回答说:“我年龄的立方是个4位数。我年龄的4次方是个6位数。 这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。” 请你推算一下,他当时到底有多年轻。
解题
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36public 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算法题内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复