USACO 3.2 Factorials阶乘(高精度)
来源:互联网 发布:404什么意思网络用语 编辑:程序博客网 时间:2024/06/05 17:37
USACO 3.2 Factorials阶乘 (数学)
Description
N的阶乘写作N!表示小于等于N的所有正整数的乘积。
阶乘会很快的变大,如13!就必须用32位整数类型来存储,70!即使用浮点数也存不下了。
你的任务是找到阶乘最后面的非零位。举个例子:
5!=1*2*3*4*5=120所以5!的最后面的非零位是2
7!=1*2*3*4*5*6*7=5040,所以最后面的非零位是4
Input
共一行,一个整数不大于4,220的整数N。
Output
共一行,输出N!最后面的非零位。
分析:高精度求n!,只要保留最后2000位。
代码
const
maxn=2000;
var
a,b:array[1..maxn] of longint;
n:longint;
procedure init;
begin
read(n);
a[maxn]:=1;
b[maxn]:=1;
end;
procedure mul(x:longint);
var
g,s,i:longint;
begin
g:=0;
for i:=maxn downto 1 do
begin
s:=a[i]*x+g;
g:=s div 10;
a[i]:=s mod 10;
end;
end;
procedure main;
var
i:longint;
begin
for i:=1 to n do
mul(i);
end;
procedure print;
var
i,j:longint;
begin
j:=maxn;
while a[j]=0 do dec(j);
writeln(a[j]);
end;
begin
init;
main;
print;
end.
- USACO 3.2 Factorials阶乘(高精度)
- USACO Section 3.2 Factorials - 高精度模拟~
- JZOJ1282.【USACO题库】3.2.1 Factorials阶乘
- USACO 3.2 Factorials
- USACO 3.2.1 Factorials
- USACO 3.2.1 Factorials
- USACO Section 3.2 Factorials
- USACO 3.2 Factorials (fact4)
- USACO section 3.2 Factorials(dp)
- USACO-Section 3.2-PROB Factorials
- USACO-Factorials(阶乘最后一个非0数)
- USACO-Factorials
- USACO:Factorials
- usaco Factorials
- usaco Chapter 3 section 3.2 Factorials
- USACO-Section 3.2 Factorials(模拟)
- [USACO3.2]阶乘 Factorials
- 【模拟】【USACO】Factorials
- Machine Learning with Scikit-Learn and Tensorflow 7 集成学习和随机森林(章节目录)
- 检测apache配置文件语法
- 欢迎使用CSDN-markdown编辑器
- 转载一篇关于Mysql 时间、日期数据类型使用的总结
- iOS开发中子类指针指向父类指针
- USACO 3.2 Factorials阶乘(高精度)
- 玲珑杯#round13 我也不是B(倍增+二分查找)
- 微信文档上几个排除错误的工具和配置
- maven cmd build application
- Ubuntu14.04 ROS安装octomap
- JS跨浏览器事件工具之:EventUtil完整源码
- JavaSE
- 配置php
- 我希望进入大学时就能知道的一些事儿