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

题解:洛谷 P1009 [NOIP 1998 普及组] 阶乘之和

【题目来源】

洛谷:P1009 [NOIP 1998 普及组] 阶乘之和 - 洛谷

【题目描述】

用高精度计算出 \(S=1!+2!+3!+\dots+n!(n\le 50)\)

其中 ! 表示阶乘,定义为 \(n!=n\times(n-1)\times (n-2)\times \dots \times 1\)。例如,\(5!=5\times 4\times 3\times 2\times 1=120\)

【输入】

一个正整数 \(n\)

【输出】

一个正整数 \(S\),表示计算结果。

【输入样例】

3

【输出样例】

9

【算法标签】

《洛谷 P1009 阶乘之和》 #数学# #高精度# #NOIP普及组# #1998#

【代码详解】

#include <bits/stdc++.h>  // 包含标准库头文件(万能头文件)
using namespace std;      // 使用标准命名空间// 定义全局数组存储阶乘和结果
int a[1010];             // 存储当前阶乘值(倒序存储)
int res[1010];           // 存储阶乘累加和(倒序存储)/*** 主函数 - 程序入口* @return 程序执行状态码(0表示成功)*/
int main()
{int n;               // 定义变量:计算到n的阶乘和cin >> n;            // 输入n值// 初始化数组(1! = 1)a[0] = 1;            // 个位存储1res[0] = 1;          // 初始和为1// 计算2!到n!的阶乘及其累加和for (int i = 2; i <= n; i++) {// 计算i的阶乘(a = a * i)int carry = 0;    // 进位值初始化为0for (int j = 0; j < 1010; j++) {a[j] = carry + a[j] * i;  // 当前位乘i加上进位carry = a[j] / 10;        // 计算新的进位a[j] %= 10;               // 保留个位数}// 计算1!+2!+...+i!(res += a)for (int j = 0; j < 1010; j++) {res[j] += a[j];           // 逐位相加res[j+1] += res[j] / 10;  // 处理进位res[j] %= 10;             // 保留个位数}}// 计算实际数字长度(去除前导零)int len = 1010;while (0 == res[len-1] && len > 1) {len--;            // 从高位向低位查找第一个非零数字}// 倒序输出结果(高位在前)for (int i = len-1; i >= 0; i--) {cout << res[i];   // 输出每一位数字}return 0;            // 程序正常结束
}

【运行结果】

3
9
http://www.jsqmd.com/news/387390/

相关文章:

  • 少走弯路:专科生专属降AIGC工具 千笔·专业降AI率智能体 VS 万方智搜AI
  • 基于FPGA的视频缩放算法:4K2K输入与输出,缩放参数可控
  • 闭眼入!9个AI论文工具测评:本科生毕业论文写作全攻略
  • 好用还专业! 降AIGC平台 千笔·降AI率助手 VS 学术猹 MBA首选
  • 交稿前一晚!9个AI论文工具测评:研究生毕业论文+学术写作全攻略
  • 摆脱论文困扰! AI论文网站 千笔写作工具 VS 学术猹,自考首选!
  • 题解:洛谷 P5721 【深基4.例6】数字直角三角形
  • 光伏mppt电导增量法mppt模型,可以实现最大功率电的追踪,模型可以正常运行,可拓展性强
  • 最近在搞综合能源系统规划,发现双层优化建模挺有意思。今天咱们就来聊聊怎么用双层模型搞定微电网的多电源容量配置,手把手带你撸一遍代码实现
  • 快递小车自动避人配送,识别行人优先避让,小区配送,输出平稳送达。
  • SpringBoot 的启动引导类真的是 XXApplication 吗?
  • RISC(Reduced Instruction Set Computing,精简指令集计算机)和CISC(Complex Instruction Set Computing,复杂指令集计算机)
  • 面试官:给我说一下 Spring MVC 拦截器的原理?
  • 流量思维向长效思维转型:开源链动2+1模式AI智能名片小程序赋能私域电商品牌建设
  • 技术赋能直播运营:开源AI智能名片商城小程序助力个人IP构建与高效运营
  • 分布式系统的接口幂等性设计详解
  • 第4章 变量:数据的容器-小结
  • 第4章 变量:数据的容器-4.1 变量的概念:为什么需要变量?
  • 2026信奥培训怎么选?十大品牌综合实力榜出炉!选对品牌事半功倍 - 匠言榜单
  • 2026年热门止痒去屑洗发水排行,告别头屑烦恼,去屑洗发水/去油去屑洗发水/止痒去屑洗发水,止痒去屑洗发水品牌怎么选择 - 品牌推荐师
  • 学霸同款! 降AIGC网站 千笔·专业降AI率智能体 VS 云笔AI
  • COMSOL相控阵超声仿真:Phased Array Focus与压力声学模块
  • Spark大数据处理:技术、应用与性能优化【2.3】
  • AI技术驱动下的SEO关键词优化新策略解析与实践
  • 大专大数据管理与应用专业,怎么自学数据治理相关知识?
  • VMware Workstation Pro 25H2 下载与汉化全攻略-Windows版
  • 详细介绍:Java面向对象:对象内存图+成员与局部变量
  • 2026申博套磁指导企业口碑推荐,考博AI择校服务新选择,考博择校指导/考博跨专业辅导,考博AI择校服务机构哪个好 - 品牌推荐师
  • 2026年自动化立体库货架品牌优选,助力企业高效仓储,仓库货架/穿梭式货架/阁楼货架,自动化立体库货架源头厂家如何选 - 品牌推荐师
  • [MCP] Advanced