(C语言)1到50的阶乘之和列表,参考用,洛谷:P1009 [NOIP1998 普及组] 阶乘之和
1到50列表,阶乘之和
S=1!+2!+3!+⋯+n!(n≤50)
1::1
2::3
3::9
4::33
5::153
6::873
7::5913
8::46233
9::409113
10::4037913
11::43954713
12::522956313
13::6749977113
14::93928268313
15::1401602636313
16::22324392524313
17::378011820620313
18::6780385526348313
19::128425485935180313
20::2561327494111820313
21::53652269665821260313
22::1177652997443428940313
23::27029669736328405580313
24::647478071469567844940313
25::16158688114800553828940313
26::419450149241406189412940313
27::11308319599659758350180940313
28::316196664211373618851684940313
29::9157958657951075573395300940313
30::274410818470142134209703780940313
31::8497249472648064951935266660940313
32::271628086406341595119153278820940313
33::8954945705218228090637347680100940313
34::304187744744822368938255957323620940313
35::10637335711130967298604907294846820940313
36::382630662501032184766604355445682020940313
37::14146383753727377231082583937026584420940313
38::537169001220328488991089808037100875620940313
39::20935051082417771847631371547939998232420940313
40::836850334330315506193242641144055892504420940313
41::34289376947494122614363304694584807557656420940313
42::1439295494700374021157505910939096377494040420940313
43::61854558558074209658512637979453093884758552420940313
44::2720126133346522977702138448994068984204397080420940313
45::122342346998826717539665299944651784048588130840420940313
46::5624964506810915667389970728744906677010239883800420940313
47::264248206017979096310354325882356886646207872272920420940313
48::12678163798554051767172643373255731925167694226950680420940313
49::620960027832821612639424806694551108812720525606160920420940313
50::31035053229546199656252032972759319953190362094566672920420940313
题:洛谷:P1009 [NOIP1998 普及组] 阶乘之和
代码
#include <stdio.h>
int main(void) {
int n, sum[70] = { 0 }, sin[70] = { 0 };
sin[0] = 1;
scanf_s("%d", &n);
for (int i = 1; i <= n; i++) {
sin[0] = 1;
for (int k = 1; k <= i; k++) {//计算每个阶乘
for (int j = 0; j < 70; j++) {
sin[j] *= k;
}
for (int j = 0; j < 70 - 1; j++) {
if (sin[j] > 9) {
sin[j + 1] += sin[j] / 10;
sin[j] %= 10;
}
}
}
for (int j = 0; j < 70; j++) {//每个阶乘与sum相加
sum[j] += sin[j];
sin[j] = 0;
}
for (int j = 0; j < 70; j++) {
if (sum[j] > 9) {
sum[j + 1] += sum[j] / 10;
sum[j] %= 10;
}
}
}
for (int i = 69; i >= 0; i--) {//输出
if (sum[i] != 0) {
for (int j = i; j >= 0; j--) {
printf("%d", sum[j]);
}
break;
}
}
}
(C语言)1到50的阶乘之和列表,参考用,洛谷:P1009 [NOIP1998 普及组] 阶乘之和的更多相关文章
- 洛谷P1009 阶乘之和 题解
想看原题请点击这里:传送门 看一下原题: 题目描述 用高精度计算出S=!+!+!+…+n! (n≤) 其中“!”表示阶乘,例如:!=****××××. 输入格式 一个正整数N. 输出格式 一个正整数S ...
- 洛谷——P1009 阶乘之和
P1009 阶乘之和 题目描述 用高精度计算出S=1!+2!+3!+…+n!(n≤50) 其中“!”表示阶乘,例如:5!=5*4*3*2*1. 输入输出格式 输入格式: 一个正整数N. 输出格式: 一 ...
- Java实现 洛谷 P1009 阶乘之和
import java.util.Scanner; public class 阶乘之和 { public static void main(String[] args) { Scanner sc = ...
- AC日记——阶乘之和 洛谷 P1009(高精度)
题目描述 用高精度计算出S=1!+2!+3!+…+n!(n≤50) 其中“!”表示阶乘,例如:5!=5*4*3*2*1. 输入输出格式 输入格式: 一个正整数N. 输出格式: 一个正整数S,表示计算结 ...
- 洛谷 P1009 阶乘之和 Label:高精度
题目描述 用高精度计算出S=1!+2!+3!+…+n!(n≤50) 其中“!”表示阶乘,例如:5!=5*4*3*2*1. 输入输出格式 输入格式: 一个正整数N. 输出格式: 一个正整数S,表示计算结 ...
- 洛谷 P1009 阶乘之和
题目描述 用高精度计算出S=1!+2!+3!+…+n!(n≤50) 其中“!”表示阶乘,例如:5!=5*4*3*2*1. 输入输出格式 输入格式: 一个正整数N. 输出格式: 一个正整数S,表示计算结 ...
- 洛谷【P3908】异或之和
二进制前置技能:https://www.cnblogs.com/AKMer/p/9698694.html 题目传送门:https://www.luogu.org/problemnew/show/P39 ...
- 洛谷 P3908 异或之和
洛谷 P3908 异或之和 题目描述 求1⨁2⨁⋯⨁N 的值. A⨁B 即 AA, B 按位异或. 输入输出格式 输入格式: 1 个整数 N . 输出格式: 1 个整数,表示所求的值. 输入输出样例 ...
- [洛谷P2750] [USACO5.5]贰五语言Two Five
洛谷题目链接:[USACO5.5]贰五语言Two Five 题目描述 有一种奇怪的语言叫做"贰五语言".它的每个单词都由A-Y这25个字母各一个组成.但是,并不是任何一种排列都是一 ...
- 第二十四届全国青少年信息学奥林匹克联赛初赛 普及组C++语言试题
第二十四届全国青少年信息学奥林匹克联赛初赛 普及组C++语言试题 1.原题呈现 2.试题答案 3.题目解析 因博客园无法打出公式等,所以给你们几个小编推荐的链接去看看,在这里小编深感抱歉! https ...
随机推荐
- OKR之剑·实战篇04:OKR执行过程优化的那些关键事
作者:vivo 互联网平台产品研发团队 本文是<OKR 之剑>系列之实战第 4 篇--OKR执行过程不是一成不变的,团队和个人在执行中不断优化执行的具体行动,保障OKR的高效执行. 前言 ...
- Dubbo 泛化调用在vivo统一配置系统的应用
作者:vivo 互联网服务器团队- Wang Fei.LinYupan Dubbo泛化调用特性可以在不依赖服务接口API包的场景中发起远程调用, 这种特性特别适合框架集成和网关类应用开发. 本文结合在 ...
- Vue中使用el-menu高亮显示问题
https://blog.csdn.net/weixin_43336525/article/details/132541500 <template> <el-menu :defaul ...
- 引发C++异常的常见原因(一)从报错地址到错误症状
在进行C++软件开发的过程中,会遇到很多问题,网上差不到,或者查到了也没什么信息可以用,所以这里想到了就将一些常见的问题放在一起,归纳整理一下. 本文主要的内容来源于CSDN的大佬文章:https:/ ...
- 线段树的区间更新 hdu 1698
***第一次写的果断超时,所以百度了一下,知道我写的每一次都要递归最底层,这样会花费很多时间,第二次写得线段树的区间更新,因为一个条件写错了,真是让我坑到死, 这样区间相同的不必更新,省了很多时间.. ...
- apache mina
本文为博主原创,未经允许不得转载: Apache Mina(Apache Multipurpose Infrastructure for Network Applications)是一个基于Java的 ...
- Angular系列教程之变更检测与性能优化
.markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...
- 使用Amber计算单点能三步走
技术背景 Amber是一个在分子动力学中非常常用的一个软件,可以用于进行分子动力学模拟计算,可以与一些软件配合进行增强采样.这里我们简单介绍一下如何使用Amber去计算一个分子构象的单点势能值,及其对 ...
- Java21 + SpringBoot3整合Redis,使用Lettuce连接池,推荐连接池参数配置,封装Redis操作
目录 前言 相关技术简介 Redis 实现步骤 引入maven依赖 修改配置文件 定义Redis配置类 定义Redis服务类,封装Redis常用操作 使用Redis服务类 总结 前言 近日心血来潮想做 ...
- [转帖]修改Linux内核参数,减少TCP连接中的TIME-WAIT
https://www.cnblogs.com/xiaoleiel/p/8340346.html 一台服务器CPU和内存资源额定有限的情况下,如何提高服务器的性能是作为系统运维的重要工作.要提高Lin ...