`
to_zoe_yang
  • 浏览: 143260 次
  • 性别: Icon_minigender_2
  • 来自: 01
社区版块
存档分类
最新评论

Problem 45

 
阅读更多

问题描述:

 

Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:

Triangle   Tn=n(n+1)/2   1, 3, 6, 10, 15, ...
Pentagonal   Pn=n(3n−1)/2   1, 5, 12, 22, 35, ...
Hexagonal   Hn=n(2n−1)   1, 6, 15, 28, 45, ...

It can be verified that T285 = P165 = H143 = 40755.

Find the next triangle number that is also pentagonal and hexagonal.

 

 

解决问题:

 

 

package projecteuler;

import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;

public class Problem45 {

	public static void main(String[] args){

		Map<Long, Long> number = new HashMap<Long, Long>();
		
		Long Triangle ;
		Long Pentagonal ;
		Long Hexagonal ;
		Long T = 286L;
		boolean find = false;
		do{
			Triangle = (T*(T+1))/2L;
			Pentagonal = (T*(3*T-1))/2L;
			Hexagonal = T*(2*T-1L);
			
			number.put(Hexagonal, 2L);
			if(number.containsKey(Triangle)){
				Long value = number.get(Triangle);
				if(value==1){
					find = true;
					System.out.println("Triangle:"+Triangle);
				}else{
					number.remove(Triangle);
					number.put(Triangle, 1L);
				}
			}
			if(number.containsKey(Pentagonal)){
				Long value = number.get(Pentagonal);
				if(value==1){
					find = true;
					System.out.println("Pentagonal:"+Pentagonal);
				}else{
					number.remove(Pentagonal);
					number.put(Pentagonal, 1L);
				}
			}
			System.out.println("T:"+T);
			T++;
		}while(!find);
		long r = T*(T+1)/2L;
		System.out.print(r);
	}
}

 

分享到:
评论

相关推荐

    Andrew Stankevich Contest 45 Problem analysis

    Andrew Stankevich Contest 45是由Artem Vasilev和Pavel Krotkov两位来自ITMO大学的参赛者在2016年4月举办的北京大学集训营中进行的问题分析。这次竞赛包含了多个具体的算法问题,并针对每个问题给出了详细的解决...

    mynane#web-problem#杂记-45.Golang 在 Mac、Linux、Windows 下如何交叉编译1

    Mac 下编译 Linux 和 Windows 64位可执行程序Linux 下编译 Mac 和 Windows 64位可执行程序Windows 下编译 Mac

    C#,电话数字键盘问题(Mobile Numeric Keypad problem)的算法与源代码

    C#,电话数字键盘问题(Mobile Numeric Keypad problem)的算法与源代码 电话数字键盘问题 提供移动数字键盘。您只能按向上、向左、向右或向下至当前按钮的按钮。不允许您按最下面一行的角点按钮(即.*和#)。 ...

    第3届Mathorcup数学建模竞赛优秀论文-ProblemB(English)-ProblemB.doc

    - **中年**:45-59岁; - **近老年**:60-74岁; - **老年**:75-89岁; - **长寿者**:90岁以上。 #### 2. 健康评分模型 为了量化上述健康标准,并针对不同年龄段制定合理的评分模型,我们需要考虑以下几个步骤:...

    STM32CubeMX 5.0.0

    在Windows和Linux上:Java运行时环境(最低版本1.7.0_45) 在MacOS上:Java开发工具包(最低版本1.7.0_45) 安装STM32CubeMX 要安装STM32CubeMX,请执行以下步骤: 将最新的STM32CubeMX安装包的全部内容从...

    Mathematics - California Mathematics - Concepts, Skills And Problem Solving

    这份文件是关于加利福尼亚州的初中数学教育内容,标题为“Mathematics - California Mathematics - Concepts, Skills And Problem Solving”,描述中提到了“Grade 7”,表明该教材针对的是七年级学生。从文件中提供...

    C#,动态规划(DP)N皇后问题(N Queen Problem)的回溯(Backtracking)算法与源代码

    C#,动态规划(DP)N皇后问题(N Queen Problem)的回溯(Backtracking)算法与源代码 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的...

    Three-body-problem-PSO-INFO6205

    粒子群算法在三体问题上的实现 1.在具有图形用户界面的三体系统模拟器上实现的PSO算法,允许用户输入... 每次移动之前,我会为每个身体释放15个粒子(总共45个粒子同时运行)以找到最佳位置 此仓库已获得MIT许可: :

    week1_problem1

    同时,它的数值计算库如 ode45(常微分方程求解器)可以帮助求解复杂的动态系统。 8. **信号处理和图像处理**:MATLAB在这些领域有专门的工具箱,如Signal Processing Toolbox和Image Processing Toolbox,包含大量...

    perl-devel-5.30.1-452.module_el8.4.0+646+45e06e4a.x86_64.rpm

    官方离线安装包,亲测可用。使用rpm -ivh [rpm完整包名] 进行安装

    leetcode-problem-solving:LeetCode问题解决

    Problem Runtime Mem Usage Level 28毫秒( 93.73% ) 13.4 MB( 79.11% ) 简单 52毫秒( 94.00% ) 13.6 MB( 45.02% ) 中等的 36毫秒( 95.77% ) 13.7 MB( 73.48% ) 中等的 68毫秒( 88.56% ) ...

    ConferenceTrackManagement.zip

    Problem Two: Conference TrackManagement   You are planning a big programming conference and have receivedmany proposals which have passed the initial screen process but you're havingtrouble fitting...

    ACM 埃及分数 解答

    Problem 在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数。 如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的。 对于一个分数a/b,表示方法有很多种,但是哪种最好呢? 首先,加...

    程序语言设计原理习题解答

    2.3 The IBM 704 and Fortran 45 2.4 Functional Programming: LISP 52 2.5 The First Step Toward Sophistication: ALGOL 60 57 2.6 Computerizing Business Records: COBOL 63 2.7 The Beginnings of ...

    The Little Book of Semaphores

    45 3.7.1 Queue hint . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.7.2 Queue solution . . . . . . . . . . . . . . . . . . . . . . . . 49 3.7.3 Exclusive queue hint . . . . . . . . . . . . ....

    gcc-c++ 及所需依赖 rpm安装包

    **正文** GCC(GNU Compiler Collection)是GNU项目的一部分,它是一个开源的编译器套件,主要用于C、C++、Objective-C、Fortran、Ada以及Go等编程语言的编译。GCC-c++则是GCC中专门针对C++语言的编译器组件,用于...

    matlab开发-InitialValueProblems

    MATLAB提供了多种内置函数,如`ode45`(基于四阶Runge-Kutta方法)、`ode23`(适合于低精度需求和刚性系统)以及`ode113`(用于高精度的Adams方法)。这些函数通常接受一个描述微分方程的函数句柄和初始条件作为输入...

    leetcode答案-ACM-Problem:C++算法

    leetcode 答案2018.9.10 2015级沉阳工业大学信息科学与工程学院计算机科学与技术算法课设 A组 1, 2题为签到题, 得出公式计算答案即可 第4题,直线分割平面的进阶版-折线分割平面,推导出公式,然后求和(实际上就是...

    leetcode338-Leetcode_Problem:leetcode记录

    问题45:跳跃游戏II 给定一个非负整数数组,您最初位于数组的第一个索引处。 数组中的每个元素代表您在该位置的最大跳跃长度。 您的目标是以最少的跳跃次数到达最后一个索引。 例子: 输入:[2,3,1,1,4] 输出:2 ...

Global site tag (gtag.js) - Google Analytics