NYOJ 28(大数阶乘)

简介: View Code #include #include #define N 16325 int a[N]; main() { int i,j,m; scanf("%d",&m); memset(a,0,sizeof(a)); a[0]...
View Code 

#include<stdio.h>
#include<string.h>
#define N 16325
int a[N];
main()
{
    int i,j,m;
    scanf("%d",&m);
    memset(a,0,sizeof(a));
    a[0]=1;
    for(i=2;i<=m;i++)
    {
        int c=0;
        for(j=0;j<N;j++)
        {
            int s=a[j]*i+c;
            a[j]=s%10;
            c=s/10;//进位
        }
    }
    for(j=N-1;j>=0;j--)//结果是倒序存放的
    {
        if(a[j])
        break;//并未继续执行j--
    }
    for(i=j;i>=0;i--)//退出时j嗨未自减
    {
        printf("%d",a[i]);
    }
    printf("\n");
    return 0;
}

  

 

目录
相关文章
|
算法 C++
剑指offer(C++)-JZ70:矩形覆盖(算法-动态规划)
剑指offer(C++)-JZ70:矩形覆盖(算法-动态规划)
|
存储 算法 C++
剑指offer(C++)-JZ69:跳台阶(算法-动态规划)
剑指offer(C++)-JZ69:跳台阶(算法-动态规划)
LeetCode 70 Climbing Stairs(爬楼梯)(动态规划)(*)
版权声明:转载请联系本人,感谢配合!本站地址:http://blog.csdn.net/nomasp https://blog.csdn.net/NoMasp/article/details/50514606 翻译 你正在爬一个楼梯。
934 0
|
机器学习/深度学习
NYOJ&#160;回文字符串
回文字符串 时间限制:3000 ms  |  内存限制:65535 KB 难度:4 描述 所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba"。当然,我们给你的问题不会再简单到判断一个字符串是不是回文字符串。
801 0
|
存储
HDU 1042(大数阶乘到10000)
//123*20 相当于 100*20 + 20*20+3 //常规方法N>=13就溢出 #include #include #include #define N 10000//因为每位里存储的是小于10000的数,所以缩小4倍 int vis[N]; int main() ...
1011 0
|
人工智能
NYOJ 451(组合数+全错位)
  光棍节的快乐 时间限制:1000 ms | 内存限制:65535 KB 难度:2   描述 光棍们,今天是光棍节。聪明的NS想到了一个活动来丰富这个光棍节。 规则如下: 每个光棍在一个纸条上写一个自己心仪女生的名字,然后把这些纸条装进一个盒子里,这些光 棍依次抽取一张纸条,如果上面的名字就是自己心仪的女生,那么主持人就在现场给该女生打电话,告诉这个光棍对她的爱慕之情,并让光棍当场表白,并得到现场所有人的祝福,没抽到的,嘿嘿就可以幸免了。
791 0
|
机器学习/深度学习 人工智能
NYOJ 33(回转填数)
  回转填数(题目叫蛇形填数) 时间限制:3000 ms | 内存限制:65535 KB 难度:3   描述 在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:10 11 12 19 16 13 28 15 14 37 6 5 4  输入 直接输入方陈的维数,即n的值。
861 0