N!

                                                                             Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)

Problem Description
Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N!

 
Input
One N in one line, process to the end of file.

 
Output
For each N, output N! in one line.

 
Sample Input
1
2
3
 
Sample Output
1
2
6
 
题目分析:用数组模拟乘法。让a[0]保存结果的各位,a[1]是十位,a[2]是百位……(为什么要逆序表示呢?因为如果按照从高到低的顺序储存,一旦进位的话就……),则每次只需要模拟手算即可完成n!。在输出时需要忽略前导0.注意,如果结果本身就是0,那么忽略前导0后将什么都不输出。所幸n!肯定不等于0,因此本题可以忽略这个细节。
#include<stdio.h>
#include<string.h>
const int maxn=40000; /*数组不能太小,小了存不下*/
int a[maxn];
int main()
{
int i,j,n;
while(~scanf("%d",&n))
{
memset(a,0,sizeof(a));
a[0]=1;
for(i=2;i<=n;i++)
{
int c=0; /*保存进位*/
for(j=0;j<maxn;j++)
{
int s=a[j]*i+c;
a[j]=s%10;
c=s/10;
}
}
for(j=maxn-1;j>=0;j--) /*去掉前导零*/
if(a[j])
break;
for(i=j;i>=0;i--)
printf("%d",a[i]);
printf("\n");
}
return 0;
}

hdu 1042 N! 高精度运算的更多相关文章

  1. hdu 1042 N!(高精度乘法 + 缩进)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1042 题目大意:求n!, n 的上限是10000. 解题思路:高精度乘法 , 因为数据量比较大, 所以 ...

  2. hdu 1042 N!(高精度乘法)

    Problem Description Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N!   Input One N in ...

  3. Hdu 1042 N! (高精度数)

    Problem Description Givenan integer N(0 ≤ N ≤ 10000), your task is to calculate N! Input OneN in one ...

  4. HDU 1042 N! 參考代码

    HDU 1042 N! 题意:给定整数N(0 ≤ N ≤ 10000), 求 N! (题目链接) #include <iostream> using namespace std; //每一 ...

  5. 高精度运算专题3-乘法运算(The multiplication operation)

    这个专题呢,我就来讲讲高精度的乘法,下面是三个计算乘法的函数,第一个函数是char类型的,要对字符串进行数字转换,而第二个是两个int类型的数组,不用转换成数字,第三个则更为优化,用a数组-b数组放回 ...

  6. [code]高精度运算

    数组存储整数,模拟手算进行四则运算 阶乘精确值 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #includ ...

  7. 系统的讲解 - PHP 浮点数高精度运算

    目录 概述 浮点数运算的"锅" 任意精度数学函数 常用数值处理方案 扩展 小结 概述 记录下,工作中遇到的坑 ... 关于 PHP 浮点数运算,特别是金融行业.电子商务订单管理.数 ...

  8. #C++初学记录(高精度运算)(加法)

    高精度运算 不管是int还是double亦或者long long ,这些定义变量都有数据范围的一定限制,在计算位数超过十几位的数,也就是超过他们自身的数据范围时,不能采用现有类型进行计算,只能自己通过 ...

  9. ICPC Asia Nanning 2017 F. The Chosen One (高精度运算)

    题目链接:The Chosen One 比赛链接:ICPC Asia Nanning 2017 题意 \(t\) 组样例,每组给出一个整数 \(n(2\le n\le 10^{50})\),求不大于 ...

随机推荐

  1. 在Windows 2008上安装Windows Mobile设备中心

    我在windows2008系统上安装Microsoft Windows Mobile Device Center v6.1时,老是弹出对话框提示缺少一个Windows Mobile设备中心所需要的Wi ...

  2. Android View坐标系详解(getTop()、getX、getTranslationX...)

    View 提供了如下 5 种方法获取 View 的坐标:1. View.getTop().View.getLeft().View.getBottom().View.getRight();2. View ...

  3. JAVA中Collection接口和Map接口的主要实现类

    Collection接口 Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements).一些Collection允许相同的元素 ...

  4. C#调用Java WebService int、DateTime等类型值接收到为空

    今天在调用Java接口时,有个int类型的值很明确的传了1,但接口一直返回没有接收到这个值. 解决方法: 引用接口时,VS会自动生成一个类,类中对于非string类型的字段会生成一个xxSpecifi ...

  5. 如何提升mysql replication的性能&amp;多线程传输二进制日志

    1,最好使用内网或者专线链路传输binlog数据 (千兆网卡.还不够的话,bounding 技术,扩展带宽) 在my.cnf中强制使用内网ip传输数据bind-address=ip2,将二进制保存在独 ...

  6. Shiro:授权控制

    对容易忽略的地方记录如下: 1.需要引入下面2个依赖,具体版本根据自身环境修改: <dependency> <groupId>org.apache.geronimo.bundl ...

  7. Java与PHPweb开发比较

    参考:https://blog.csdn.net/loophome/article/details/83413878

  8. mybatis SQL构造器

    org.apache.ibatis.jdbc.AbstractSQL<T> org.apache.ibatis.jdbc.AbstractSQL<T> 抽象泛型类,它主要用于解 ...

  9. Windows下安装Python requests模块

    在使用自己写的或者别人的python小工具时可能会出现类似ImportError: No module named Requests的问题: D:\tool\python\fuzz>Fuzz.p ...

  10. 当Python与数模相遇

    数模有一个题目要处理杭州自行车在每个站点可用数量和已经借出数量,这数据在www.hzbus.cn上可以获取,它是10分钟更新一次的.这些数据手动获取,需要不停的刷页面,从6:00am到9:00pm,显 ...