当前位置: 首页 > news >正文

B4236 [四川青少年 C++ 算法设计大赛 2024] 4-5 年级组第 7 题

这是一个经典的数论问题。以下是针对该题目的简洁解析和 C++ 代码。

解题思路

  1. 核心原理

    阶乘末尾的 0 是由因子 \(2\)\(5\) 相乘得到的(\(2 \times 5 = 10\))。

  2. 瓶颈因素

    \(1\)\(n\) 的乘积中,因子 \(2\) 的数量远远多于因子 \(5\) 的数量。因此,末尾 \(0\) 的个数完全取决于因子 \(5\) 的个数

  3. 计算方法

    我们需要计算 \(n!\) 中包含多少个因子 \(5\)

    • \(n\) 除以 \(5\),得到包含至少 \(1\) 个因子 \(5\) 的数的个数。
    • \(n\) 除以 \(25\)\(5^2\)),得到包含至少 \(2\) 个因子 \(5\) 的数的个数。
    • 以此类推,不断除以 \(5\) 并累加商,直到 \(n\)\(0\)

公式为:\(ans = \lfloor \frac{n}{5} \rfloor + \lfloor \frac{n}{25} \rfloor + \lfloor \frac{n}{125} \rfloor + \dots\)

C++ 代码实现

#include <iostream>using namespace std;int main() {// 题目数据范围 n < 2*10^9,int (约21亿) 刚好够用,// 但习惯上建议使用 long long 防止边界溢出或便于后续扩展。long long n;cin >> n;long long ans = 0;// 循环不断除以 5while (n > 0) {ans += n / 5; // 累加当前的商n /= 5;       // 更新 n}cout << ans << endl;return 0;
}

复杂度分析

  • 时间复杂度\(O(\log_5 n)\)。因为每次 \(n\) 都缩小 \(5\) 倍,计算非常快,对于 \(2 \times 10^9\) 的数据也能瞬间完成。
  • 空间复杂度\(O(1)\)。只需要常数级变量。

示例推演 (n=100)

  1. \(100 / 5 = 20\)
  2. \(20 / 5 = 4\)
  3. \(4 / 5 = 0\) (结束)
  4. 答案:\(20 + 4 = 24\)\(0\)
http://www.jsqmd.com/news/308834/

相关文章:

  • Java计算机毕设之基于Springboot+vue的毕业生实习与就业管理系统springboot的毕业生就业系统(完整前后端代码+说明文档+LW,调试定制等)
  • 【课程设计/毕业设计】基于springboot的毕业生就业系统应届生毕业生就业信息管理系统【附源码、数据库、万字文档】
  • ssh连接云算力平台打开jupyterlab(第二版)
  • 2026年郑州靠谱的蛋糕培训学校,巧克氏值得关注!
  • UE5 C++(56)获取文件的路径名、文件名,还有后缀名
  • 2026年离心机品牌盘点,聊聊盐城凯特实验仪器靠谱吗
  • 工程实施挑战与解决方案
  • 安徽佑邦智能光纤传感技术服务推荐,好用且性价比高的品牌有吗?
  • 防雨罩定制生产厂家哪家好,中帆盛森篷布制品优势凸显
  • 【2026】 LLM 大模型系统学习指南 (22)
  • 【2026】 LLM 大模型系统学习指南 (23)
  • 【课程设计/毕业设计】基于java的电缆行业生产管理系统基于springboot的电缆行业生产管理系统【附源码、数据库、万字文档】
  • 【2026】 LLM 大模型系统学习指南 (24)
  • Java计算机毕设之基于springboot的通信电缆行业生产管理系统基于SpringBoot + Vue的电缆行业生产管理系统(完整前后端代码+说明文档+LW,调试定制等)
  • Java毕设选题推荐:基于springboot的制造业电缆行业生产管理系统基于java的电缆行业生产管理系统【附源码、mysql、文档、调试+代码讲解+全bao等】
  • AI Agent进化之路:从工具到伙伴,从自动化到自主决策
  • 【毕业设计】基于springboot的毕业生就业系统(源码+文档+远程调试,全bao定制等)
  • 用 Python 批量采集清洗电商数据,副业月入 2 w+ 的完整流程
  • 从 0 到 1:用 Python + AI 搭建一个“自动写日报”的工具(源码开放)
  • 别让 DB 成为系统短板:从 SQL 调优到多级缓存的 7 阶进化之路
  • 【Android 美颜相机】第十八天:GPUImageChromaKeyBlendFilter 解析
  • 聊聊室内艺术涂料十大品牌推荐,沐瑟上榜了吗?
  • Java毕设项目:基于springboot的毕业生就业系统(源码+文档,讲解、调试运行,定制等)
  • 细聊唐山环保装修公司,美洺驰装饰口碑怎么样
  • 盘点口碑好的PCBA厂家,硬之城技术支持服务怎么样
  • 2026年讲讲山西东方红彩灯厂,造型美观且口碑好的性价比之选
  • 光纤传感技术服务怎么选,安徽佑邦智能可作参考吗
  • 迅雷极速版下载安装教程|轻量无广告的迅雷极速版使用体验分享
  • 【短视频随机抽帧】短视频搬运去重利器:随机抽帧降帧工具,智能提升视频原创度!
  • 【ArkTS】implements详解