三角形数、五边形数和六角形数分别由以下公式给出:

三角形数 Tn=n(n+1)/2 1, 3, 6, 10, 15, …
五边形数 Pn=n(3n−1)/2 1, 5, 12, 22, 35, …
六边形数 Hn=n(2n−1) 1, 6, 15, 28, 45, …
可以验证,T285 = P165 = H143 = 40755。

找出下一个同时是三角形数、五边形数和六角形数的数。

#include <stdio.h>
#include <inttypes.h>int64_t Triangle(int64_t n) {return n * (n + 1) >> 1;
}int64_t Pentagonal(int64_t n) {return n * (3 * n - 1) >> 1;
}int64_t Hexagonal(int64_t n) {return n * (2 * n - 1);
}int64_t binary_search(int64_t (*arr)(int64_t), int64_t n, int64_t x) {int64_t head = 1, tail = n, mid;while (head <= tail) {mid = (head + tail) >> 1;if (arr(mid) == x) return mid;if (arr(mid) < x) head = mid + 1;else tail = mid - 1;}return 0;
}int main() {int64_t n = 143;while (1) {n++;int64_t temp = Hexagonal(n);if (!binary_search(Pentagonal, temp, temp)) continue;printf("%lld\n", temp);break;}return 0;
}

三角形数、五边形数和六角形数相关推荐

  1. c++中有表示正无穷的数吗_简单的数

    数字可谓是数学系统中最基本的单元,它们所拥有的特性已经让数论家为之着迷了上千年.数字可被分为不同的类型,如自然数.整数等等,不同种类数字之间又各自有着一定的关联,并且有着一些与它们相关的数学问题. 平 ...

  2. 第二类Stirling数(第二类斯特林数)

    第二类Stirling数(第二类斯特林数) 定义 第二类Stirling数表示把nnn个不同的数划分为mmm个集合的方案数,要求不能为空集,写作S(n,m)S(n,m)S(n,m). 和第一类Stir ...

  3. sum_series() 求一列数的指定个数的数和(5个数字的和)

    1 #include <stdio.h> 2 #include <stdarg.h> 3 /*用sum_series() 求一列数的指定个数的数和(5个数字的和)*/ 4 do ...

  4. LeetCode 31. Next Permutation-- Python 解法--数学题--比当前数大的最小的数

    LeetCode 31. Next Permutation-- Python 解法–数学题–比当前数大的最小的数 此文首发于我的个人博客:LeetCode 31. Next Permutation-- ...

  5. Hadoop MapReduce概念学习系列之map并发任务数和reduce并发任务数的原理和代码实现(十八)...

    首先,来说的是,reduce并发任务数,默认是1. 即,在jps后,出现一个yarnchild.之后又消失.  这里,我控制reduce并发任务数6. 有多少个reduce的并发任务数可以在程序里控制 ...

  6. ir指令、立即数的作用_立即数的判断方法一

    在ARM汇编的数据处理指令中经常会使用到常数,而ARM汇编中规定使用的常数必 须是立即数.ARM立即数的是由一个8位的常数循环右移偶数位得到的,其中循环右移 的位数由一个4位2进制的两倍表示,公式如下 ...

  7. Linux最大线程数限制及当前线程数查询

    Linux最大线程数限制及当前线程数查询 1.总结系统限制有: /proc/sys/kernel/pid_max #查系统支持的最大线程数,一般会很大,相当于理论值 /proc/sys/kernel/ ...

  8. 请设计一个栈,实现十进制数转任意进制数。

    文章目录 1.题目描述 2.代码实现 1.题目描述 请设计一个栈,实现十进制数转任意进制数 2.代码实现 #include <iostream> using namespace std;# ...

  9. Linux统计文件行数、字数、字节数

    2019独角兽企业重金招聘Python工程师标准>>> 语法:wc [选项] 文件 说明:该命令统计给定文件中的字节数.字数.行数.如果没有给出文件名,则从标准输入读取.wc同时也给 ...

最新文章

  1. 50位全球专家畅谈人工智能治理进程——结伴前行,合作共赢(附下载)
  2. 2011年中国民营企业500强名单,广东仅13家浙江180家江苏130家
  3. oracle 11g重新安装配置,Oracle 11g数据库安装和卸载教程
  4. 脱单盲盒|交友盲盒系统
  5. Spring :@Inject注解
  6. Referenced file contains errors (http://www.springframework.org/schema/context/spring-context-3.1.xs
  7. 解决SSH项目乱码问题的环境配置方案
  8. 在windows2012R2安装SQLSERVER2012失败的问题之解决
  9. 机器人收集 + Keypose 算法:准确估计透明物体的 3D 姿态
  10. java文件删除失败
  11. 营业执照在线生成_潍坊综合保税区发出全省首张覆盖四大市场主体类型的“微信秒批”营业执照...
  12. 淘宝网发展史:揭开神秘组织的技术内幕与艰辛历程
  13. 2022爱分析·虚拟化活动实践报告
  14. 如何预置apk(MTK6589)
  15. 百度程序员删库跑路被逮捕!
  16. Python A value is trying to be set on a copy of a slice from a DataFrame
  17. 国产系统中标麒麟安装教程
  18. 免费小说阅读小程序,仿番茄小说源码;微信小说小程序源码
  19. 湖北一公司发生闪爆事故,这套化工厂巡检系统你有吗?
  20. KMP 看毛片算法原理及其实现

热门文章

  1. 锁——死锁——单个锁锁死
  2. [poj2311]Cutting Game_博弈论
  3. 从零开始springboot 第二讲
  4. 《DSP using MATLAB》示例Example7.10
  5. GJM: Unity3D基于Socket通讯例子 [转载]
  6. 安装LR11,到执行产品配置时,停止不动了
  7. [詹兴致矩阵论习题参考解答]习题1.13
  8. Flutter 动态饼状图 让你的APP中无聊的统计图动起来 挻舒适的感觉瞬间提升一个档次 -深夜创作
  9. java基础—IO流——字节流的操作演示
  10. ubuntu安装禅道