15:阶乘和

总时间限制: 
1000ms

内存限制: 
65536kB
描述

用高精度计算出S=1!+2!+3!+…+n!(n≤50)

其中“!”表示阶乘,例如:5!=5*4*3*2*1。

输入正整数N,输出计算结果S。

输入
一个正整数N。
输出
计算结果S。
样例输入
5
样例输出
153
来源
NOIP1998复赛 普及组 第二题

思路:

  模拟;

来,上代码:

#include<cstdio>

using namespace std;

int n,len,cur=,s[],ans[];

int main()
{
scanf("%d",&n);
len=,s[]=,ans[]=;
for(int v=;v<=n;v++)
{
for(int i=;i<=len;i++) s[i]*=v;
cur=;
for(int i=;i<=len;i++)
{
s[i]+=cur;
cur=;
if(s[i]>) cur+=s[i]/;
s[i]%=;
}
while(cur>) s[++len]=cur%,cur/=;
for(int i=;i<=len;i++)
{
ans[i]+=s[i];
if(ans[i]>) ans[i+]+=ans[i]/,ans[i]%=;
}
}
for(int i=;i>=;i--)
{
if(ans[i]==) continue;
for(int j=i;j>=;j--) putchar(ans[j]+'');
break;
}
return ;
}

最新文章

  1. mybatis研究:select性能对比
  2. 时光煮雨 Unity3D实现2D人物动画② Unity2D 动画系统&amp;资源效率
  3. 深入理解JS异步编程二(分布式事件)
  4. MassTransit RabbitMQ 参考文档
  5. scp失效问题
  6. PowerShell 语法结构
  7. 《第一行代码--Android》阅读笔记之数据持久化
  8. 【BZOJ】【1877】【SDOI2009】晨跑
  9. 获取键盘输入或者USB扫描枪数据
  10. sql中查询同一列所有值出现的次数
  11. Java虚拟机三:OutOfMemoryError异常分析
  12. centOS --- 安装最新版的node nodejs
  13. Java的组合排列问题
  14. blfs(systemv版本)学习笔记-使用apache创建简单的网页服务器
  15. 线特征---LSD and LBD程序运行(一)
  16. 纯正商业级小程序开发(完结版).txt
  17. Windows 下 绿化 Oracle
  18. [Python]字典Dictionary、列表List、元组Tuple差异化理解
  19. nmon
  20. MsWord 操作总结

热门文章

  1. go语言 匿名变量
  2. SharePoint 解决打开浏览器自动登录
  3. 巧用用layer-list做一个卡片背景
  4. 《The Linux Command Line》 读书笔记02 关于命令的命令
  5. Android 中的编码与解码
  6. android编译系统的makefile文件Android.mk写法
  7. iOS Apple Pay
  8. 手机影音1--SplashActivity
  9. Android源码分析之SharedPreferences
  10. NSArray Sort 排序