`
zhou_zhihao
  • 浏览: 57243 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

问题14-找到最长的一个数列当开始的数小于1000000.

 
阅读更多

问题具体描述如下:

数列定义是这样的:

n:n/2(n是偶数的时候)

n:3n+1(n是奇数的时候)

当开始的数是13时,数列如下所示

13->40->20->10->5->16->8->4->2->1

所以从13开始的数列长度为10。所有的数列都结束于1。

求开始数在1000000以下的数列长度最长的开始数。

 

代码如下:

/**
	 * n n/2 (n 是偶数) n 3n + 1 (n 是奇数)
	 * 
	 * @param n
	 * @return
	 */
	private static Long getNumber(int n) {
		Long max =0L;
		Long maxValue = 0L;
		for(Long number=1L;number<n;number++){
			Long temp = number;
			Long i = 0L;
			while (true) {
				if (temp == 1) {
					break;
				} else if (temp % 2 != 0) {
					temp = temp * 3 + 1;
				} else {
					temp = temp / 2;
				}
				i++;
			}
			if(max < i){
				max = i;
				maxValue = number;
			}
		}
		return maxValue;
	}

  可以得到答案:837799。

运行的有点缓慢。

 

请不吝赐教。

@anthor ClumsyBirdZ

分享到:
评论

相关推荐

    世界500强面试题.pdf

    1.3.9. 左移递减数列查找某一个数................................................................ 60 1.3.10. 对于一个整数矩阵,存在一种运算,对矩阵中任意元素加一时,需要其相 邻(上下左右)某一个元素也...

    数列经典例题-三角函数.doc

    文档中的内容似乎是一个数学考试的试卷,包含了选择题、填空题和解答题,主要涉及的是平面直角坐标系中的几何问题,特别是与圆和直线相关的知识点。虽然题目没有明确指出与三角函数的具体关联,但通常在处理直线的...

    数据与算法——实验报告——数列递增子序列

    这篇实验报告主要探讨了在数据与算法领域中如何找到数列的最长递增子序列,这是一个常见的算法问题,尤其在计算机科学的算法设计与分析中占有重要地位。实验的目的是通过设计、实现和分析算法来锻炼解决问题的能力。...

    kuangbin acm模板超级好用

    2.10.1 一类开关问题,对 2 取模的 01 方程组 . . . . . . . . . . . . . . . . . . . 37 2.10.2 解同余方程组 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.11 整数拆分 . . . . . . ....

    求最长不下降序列, 完全是代码

    题目要求编写一个程序,用于找到一个整数序列中的最长不下降子序列,并输出该子序列的长度以及具体的序列元素。所谓“不下降”,即序列中的数字按照顺序排列时,后面的数字不小于前面的数字。例如,在序列 [3, 4, -1...

    euler project.r.zip_R Euler project_project

    Euler Project是一个著名的在线编程挑战平台,旨在通过解决数学和计算机科学问题来提高编程技能。这个压缩包`euler project.r.zip_R Euler project_project`包含了R语言实现的Euler项目前14题的答案。让我们深入探讨...

    ~20七年级数学上册测试题及答案12套精选.doc

    1. 相反数的概念:题目中提到了3的相反数是-3,这涉及了数的相反数定义,即一个数的相反数加上它本身等于0。 2. 数轴与距离:在数轴上,与-2的距离等于4的点有两个,分别是-2+4=2和-2-4=-6,这考察了数轴上两点间...

    Python期末题库(1)-带答案(2).docx

    - 斐波那契数列是这样一个数列:0、1、1、2、3、5...,后面的每一个数都是前面两个数的和。题目提供了两种方法,一种是通过循环计算,另一种是利用列表的追加操作。 10. **文件操作**: - 使用`open()`函数读取...

    Algorithm-algorithms-in-python.zip

    - **Fibonacci数列**:通过计算前两个数的和来得到下一个数,常用于优化问题。 - **最长公共子序列**:寻找两个序列中最长的不降序子序列。 - **背包问题**:在给定容量的背包中,如何选择物品以达到最大价值。 ...

    zengzhanglv.rar_5OP_93K_dailyf2r_lvdescription_mapdhx

    现在知道这个数列有一个性质:后一个数相对于前一个数的增长率总是百分比下的整数(如5相对于4的增长率是25%,25为整数;而9对7就不行了)。现在问:这个数列最长可以有多长?满足最长要求的数列有多少个? Input ...

    人教部编版三年级数学上册期中考试题(一套).pdf

    - (2) 数列13, 16, 19呈现每次增加3的规律,所以下一个数是19+3=22。 6. **乘法与加法的结合**:一台磨面机每小时加工面粉62千克,4台6小时加工的总量是62×4×6=1488千克。 7. **时间计算**:火车原本10:40到达...

    安徽省定远县民族2018 2019学年高一数学下学期第一次月考试题.doc

    16. **数列规律的识别** - 题目16是一个数列规律题,观察每个等式,发现等号左边是连续整数平方的和,而等号右边是负的前n个自然数的和,可以推断出第n个等式的一般形式。 这些知识点涵盖了高中数学中的重要概念,...

    Python 算法集.zip

    3. 最长递增子序列(LIS):找到一个序列中具有最长递增子序列。 4. 矩阵链乘法:通过优化计算顺序,减少矩阵乘法的运算次数。 五、字符串处理 1. KMP算法:高效的字符串匹配算法,避免了不必要的回溯。 2. Rabin-...

    Algorithm-algorithms.zip

    4. **动态规划(DP)**:是一种将复杂问题分解为更小子问题的策略,如背包问题、最长公共子序列、斐波那契数列等。DP问题的关键在于找到最优子结构和重叠子问题。 5. **字符串处理算法**:如KMP算法、Rabin-Karp算法...

    数学动态规划PPT学习教案.pptx

    如在提供的代码中,`factorial` 函数就是一个典型的递归实现,计算一个数的阶乘。 - 递归包含两个关键部分:**结束条件**(base case),如`if(n)`返回-1;以及**递归调用**,如`return n*factorial(n-1)`。 2. **...

    (2021-2022年收藏)最新苏教版一年级数学上册期末试卷5篇.docx

    5. 解决实际问题:例如哪一条线最长、哪道算式的得数最小等,需要学生将数学知识应用于实际情境中,进行推理判断。 6. 图形和数量关系:例如在直尺上找出离9最近的数,或是哪一盘的个数最少,这涉及到对图形和数的...

    北师大版一年级数学上册期中试卷1-.pdf

    这份“北师大版一年级数学上册期中试卷1-.pdf”主要涵盖了小学一年级的数学基础知识,包括比较大小、数的顺序、简单的加减运算、图形认知以及实际问题的解决。以下是试卷中涉及的主要知识点: 1. **比较大小**:在...

    三年级数学上册期末考试题及答案【精选】.pdf

    - 问题8需要识别数列规律,第一个数列每次减少0.4,第二个数列每次加3,据此填入缺失的数字。 - 问题9介绍了地图的基本方向,即上北下南左西右东。 - 问题10涉及到分组比赛的计算,32支球队分为8组,每组4队,每...

Global site tag (gtag.js) - Google Analytics