[源码和文档分享]基于C语言实现的金字塔问题(Pyramid Problem)

1 开发软件说明

Dev C++是一个 Windows 下的C 和C++程序的集成开发环境,是一款自由软件,遵守GPL 许可协议分发源代码。它使用MingW32/GCC 编译器,遵循 C/C++ 11 标准,同时兼容 C++98 标准。开发环境包括多页面窗口、工程编辑器以及调试器等,在工程编辑器中集合了编辑器、编译器、连接程序和执行程序,提供高亮度语法显示,以减少编辑错误。多国语言版中包含简繁体中文语言界面及技巧提示,还有英语、俄语、法语、德语、意大利语等二十多个国家和地区语言提供选择。

2 数学分析与处理

为了完成既定的目标,我们首先做简要的数学处理。

首先计算搭建不同种类的地基长度为 i 的金字塔所需要的立方体数。

第一类是 High 金字塔,搭建地基为 i 的 High 金字塔所需要的立方体数为:

第二类是 Low 金字塔中地基长度 i 为奇数的金字塔,搭建高度h = (?+1)/2,此类金字塔所需要的立方体数为:

第三类为 Low 金字塔中地基长度 i 为偶数的金字塔,搭建高度h = ?/2,此类金字塔所需要的立方体数为:

经过数学推导可以得到,第二类和第三类的金字塔数目可以统一为一个表达式,即:搭建地基为 i 的 Low 金字塔所需要的立方体数为:

接下来,可以根据上述结果,计算出立方体个数不少于106的 High 型金字塔最小地基长度为 144,立方体个数不少于106的 Low 型金字塔最小地基长度为181。

6607861-5fba2e33987c1fbc.png

参考文档和完整的文档和源码下载地址:

https://www.write-bug.com/article/1656.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值