刘汝佳 《竞赛入门》5.2.2
5.2.2阶乘的精确值
#include <iostream>
using namespace std;
//阶乘的精确值
//输入不超过1000的正整数n,输出n!的精确结果
// 1000的阶乘有3000位之多,只能用数组才能存的下
#define MAX 3000
int num[MAX] = {0};
int main()
{
int n;
cin >> n;
num[0] = 1;
int i,j,k;
//从2开始乘 j
for(i = 2;i < n;i++)
{
//对数组以个十百千的顺序存结果
//其实是模拟手工乘法例如算1*2时 ,就相当于(2999个0)0...01*2列竖式,就是每一位与2相乘并且加上进位,
//每乘一个数就会把这数组里的三千位更新
int c = 0;
for(j = 0;j < MAX;j++)
{
int s = num[j] * i + c;
num[j] = s % 10; //这里就相当于每一位乘以i之后的个位
c = s / 10; //相当于十位
}
}
//因为是按照个十百千储存在数组中的,所以要倒序输出
for(k = MAX-1; k >= 0; k--) {if(num[k]) break;} //从后往前找到第一个不为零的数字就是最高位
for(int m = k ; m >= 0; m--) {cout << num[m] << " ";}
return 0;
}
刘汝佳 《竞赛入门》5.2.2相关推荐
- 刘汝佳算法入门笔记(1)
刘汝佳算法入门笔记 习题4-2 习题4-2 有n行n列(2≤n≤9)的小黑点,还有m条线段连接其中的一些黑点.统计这些线段连成 了多少个正方形(每种边长分别统计). 行从上到下编号为1-n,列从左到右 ...
- 破损的键盘(刘汝佳-算法入门经典第六章)
感谢原文博主对此题的解释!笔者在原文基础上进行了部分注释以表达自己的理解,如有错误,恳请指正! 原文链接:https://blog.csdn.net/gyh_420/article/details/7 ...
- 刘汝佳《算法竞赛入门经典》---总结
刘汝佳:<算法竞赛入门经典> 三步: 基本的数据结构+算法知识: 数论等数学基本知识: 锻炼联想建模能力.知识与实际相结合,解决实际问题! 第一章:程序设计入门 1.a/b 当a.b为整数 ...
- 算法竞赛入门经典(刘汝佳)——代码笔记
Reference: <算法竞赛入门经典>(刘汝佳)第一版.第二版 ------------------------------------------------------------ ...
- 刘汝佳《算法竞赛入门经典(第二版)》习题(三)
刘汝佳<算法竞赛入门经典(第二版)>第三章习题(一) 习题3-1 得分(ACM/ICPC Seoul 2005,UVa1585) 给出一个由O和X组成的串(长度为1~80),统计得分.每个 ...
- 刘汝佳《算法竞赛入门经典(第二版)》习题(六)
刘汝佳<算法竞赛入门经典(第二版)>第四章习题(4-1~4-3) 习题4-1 象棋(Xiangai,ACM/ICPC Fuzhou 2011,UVa1589) 考虑一个象棋残局,其中红方有 ...
- 刘汝佳《算法竞赛入门经典(第二版)》习题(二)
刘汝佳<算法竞赛入门经典(第二版)>第二章习题 目录 刘汝佳<算法竞赛入门经典(第二版)>第二章习题 习题2-1 水仙花数 习题2-2 韩信点兵 习题2-3 倒三角形 习题2- ...
- 刘汝佳算法竞赛第二版习题3-2思路
最近在看刘汝佳编写的紫皮算法书,第三章后面有个习题,尝试写了一下,总感觉能找到更加便利的解题方法,但能力有限没想到. 上网搜索了一下,也没找到能让我眼前一亮的方法,那就暂且把我写的shi山放出来让大伙 ...
- (转)刘汝佳书上出现的一些题目
推荐一些题目,希望对参与ICPC竞赛的同学有所帮助. POJ上一些题目在 http://162.105.81.202/course/problemSolving/ 可以找到解题报告. ...
- 【刘汝佳】习题3-1 UVA1585
刘汝佳 <算法竞赛入门经典(第二版)>第三章习题 3-1 习题3-1 得分(ACM/ICPC Seoul 2005,UVa1585) 给出一个由O和X组成的串(长度为1~80),统计得分. ...
最新文章
- 知识图谱与机器学习如何结合?
- 亚马逊瞄准大数据 欲在汽车行业抢占一席之地
- WindowsServer和普通WIN操作系统有什么不同?
- # c++运算符重载之 前置++, 后置++, 负号运算符, 类型转换函数, 以及输入输出运算符...
- 与容器服务 ACK 发行版的深度对话第二弹:如何借助 hybridnet 构建混合云统一网络平面
- Codewars-Javascript训练手册:正则表达式(Regular Expressions)
- SQL中 char、varchar、text 和 nchar、nvarchar、ntext的区别
- android安装过哪些应用程序,如何安装应用程序两次而不干扰Android?
- git本地分支和远程分支改名
- matlab中目录的相关操作
- TakeColor取色器的使用
- donet 微服务开发 学习-AOP框架基础
- 抖音seo,抖音优化系统,抖音seo矩阵系统源码技术搭建
- 职业定位测试/职业能力倾向测试
- 还在为520礼物发愁吗?教你用python撩女朋友
- 新建Python项目
- 数据分析指标大收集!互联网行业必备!
- Defina脚本 - 恶灵塔任务大全
- 百度音乐接口-——可以根据这做一个在线音乐播放器哦
- 《Alogrithms》算法学习笔记——第一章:导语与数论
热门文章
- 谷歌插件firebug和xpath下载,并解决包括拖拽无法安装、提示“组件无法安装 未通过验证”等问题
- paip.常用汉字形声字大全3500字
- Adobe FLASH CS6 安装错误解决方法
- 幻想三国android官方版,幻想三国ol官方版下载
- android 截屏 水印,水印截图工具微商截图
- 三边定位算法在OMNet++上的简单实现
- 酷炫的迁徙图和轮播图,用pyecharts也可以做出来
- 浙江大学计算机专业选考要求,浙大等招办主任解读2020年选考科目要求!各专业有调整!...
- 成都理工大学乐千桤java考试,成都理工大学方案.PDF
- Python爬虫下载喜马拉雅音频文件