任意给定一个正整数N,
如果是偶数,执行: N / 2
如果是奇数,执行: N * 3 + 1
生成的新的数字再执行同样的动作,循环往复。
通过观察发现,这个数字会一会儿上升到很高,
一会儿又降落下来。
就这样起起落落的,但最终必会落到“1”
这有点像小冰雹粒子在冰雹云中翻滚增长的样子。
比如N=9
9,28,14,7,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1
可以看到,N=9的时候,这个“小冰雹”最高冲到了52这个高度。
输入格式:
一个正整数N(N<1000000)
输出格式:
一个正整数,表示不大于N的数字,经过冰雹数变换过程中,最高冲到了多少。
例如,输入:
10
程序应该输出:
52
再例如,输入:
100
程序应该输出:
9232

思路:递归,三层条件,1、最终回落 2、偶数 3、奇数 调用递归,比出最大即可。

public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int ans = 1;for (int i = 1; i < n; i++) {int max = even(i, n);     // 调用递归if (max > ans) {          // 比较ans = max;            // 最大}}System.out.println(ans);      // 输出}public static int even(int n, int max) {if (n == 1) {                 // 最终回落return max;} else if (n % 2 == 0) {      // 偶数n = n / 2;                // 偶数执行if (n > max) {max = n;}return even(n, max);} else {                       n = n * 3 + 1;            // 奇数执行if (n > max) {max = n;}return even(n, max);}}
}

小剧场:孑然 一身轻 流连小街巷口

蓝桥七届 冰雹数 JAVA相关推荐

  1. 蓝桥七届 密码脱落 JAVA

    X星球的考古学家发现了一批古代留下来的密码. 这些密码是由A.B.C.D 四种植物的种子串成的序列. 仔细分析发现,这些密码串当初应该是前后对称的(也就是我们说的镜像串). 由于年代久远,其中许多种子 ...

  2. 蓝桥七届 四平方和 JAVA

    四平方和定理,又称为拉格朗日定理: 每个正整数都可以表示为至多4个正整数的平方和. 如果把0包括进去,就正好可以表示为4个数的平方和. 比如: 5 = 0^2 + 0^2 + 1^2 + 2^2 7 ...

  3. 蓝桥七届 搭积木 JAVA

    小明最近喜欢搭数字积木, 一共有10块积木,每个积木上有一个数字,0~9. 搭积木规则: 每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小. 最后搭成4层的金字塔形,必须用完所有的积木. ...

  4. 蓝桥七届 凑算式 JAVA

    B DEF A + --- + ------- = 10C GHI 这个算式中A~I代表1~9的数字,不同的字母代表不同的数字. 比如: 6+8/3+952/714 就是一种解法, 5+3/1+972 ...

  5. java中的冰雹数,java实现第七届蓝桥杯打印数字

    打印数字 打印数字 小明写了一个有趣的程序,给定一串数字. 它可以输出这串数字拼出放大的自己的样子. 比如"2016"会输出为: 00000 1 6666 2 0 0 1 1 6 ...

  6. 蓝桥杯第七届国赛JAVA真题----七星填数

    七星填数 如图[图1.png]所示. 在七角星的14个节点上填入1~14 的数字,不重复,不遗漏. 要求每条直线上的四个数字之和必须相等. 图中已经给出了3个数字. 请计算其它位置要填充的数字,答案唯 ...

  7. 蓝桥杯第七届省赛java组大题解析(“取球博弈”??难度,“压缩变换”三星难度)

    第六题 题目: 方格填数 如下的10个格子    +--+--+--+    | 0| 1| 2| +--+--+--+--+ | 3| 4| 5| 6| +--+--+--+--+ | 7| 8| ...

  8. 蓝桥杯第七届省赛JAVA真题----压缩变换

    压缩变换 小明最近在研究压缩算法. 他知道,压缩的时候如果能够使得数值很小,就能通过熵编码得到较高的压缩比. 然而,要使数值很小是一个挑战. 最近,小明需要压缩一些正整数的序列,这些序列的特点是,后面 ...

  9. 蓝桥杯第七届国赛JAVA真题----平方末尾

    平方末尾 能够表示为某个整数的平方的数字称为"平方数" 比如,25,64 虽然无法立即说出某个数是平方数,但经常可以断定某个数不是平方数. 因为平方数的末位只可能是:[0, 1, ...

最新文章

  1. java包装_Java基础之神奇的包装类(一)
  2. leetcode 组合总和
  3. TatukGIS - GisDefs - CheckDir 函数
  4. python能和wincc一起用_python通过ado连接wincc数据库
  5. 【dfs】【拓扑排序】组合树
  6. Cheatsheet: 2010 12.13 ~ 12.23
  7. 识别产品外观的合格软件_产品外观质量视觉检测系统.PDF
  8. Microsoft Visual Studio下编译缺少头文件unistd.h解决办法
  9. 学了python可以干嘛-学Python后到底能干什么?网友:我太难了
  10. 解决应用程序正常初始化(0xc0000135)失败
  11. beego框架:static目录下的apk文件浏览器下载使用正常,手机浏览器下载无法解析安装
  12. origin绘图软件安装包及入门使用
  13. oracle 查询时间段内的天,ORACLE任意时间段内所有天数日期查询
  14. Xshell快速命令集解放生产力
  15. lintcode 873 模拟松鼠(JavaScript)
  16. 『互联网架构』埋点基础知识
  17. 八个典型的大数据应用案例
  18. 【不忘初心】Win11_21H2_22000.100_X64_四合一[纯净精简版][2.9G](2021.8.5)
  19. javascript控制台_JavaScript控制台简介
  20. 学习C/C++效率太慢?一份思维导图教你如何从零开始系统学好C/C++

热门文章

  1. 突破无人驾驶量产瓶颈,威蓝科技利用仿真测试降本增效
  2. 技术领导力: 深度访谈《深入分布式缓存》
  3. 第二届「科学探索奖」获奖名单公布
  4. 如何能成为一个自由职业者?先做好这几方面
  5. 11g 配置 dgmgrl 以及报错 DataGuard ORA-00313,
  6. 排序算法的稳定性及其汇总
  7. 你知道RxJava也可以实现AsyncTask吗?
  8. 学术期刊《中华全科医学》
  9. 与计算机内存容量密切相关的,与计算机内存容量密切相关的是( )。
  10. L9110S电机驱动——让小车动起来