杭电1042---

题目详细

#include<stdio.h>
#include<string.h>
const int maxn = 50000;
int f[maxn];
int main()
{
    int i,j,n;

    while(~scanf("%d",&n))
    {
        memset(f,0,sizeof(f));
        f[0]=1; //小于2的阶乘都为1
        for(i=2;i<=n;i++)
        {
            int c=0;  //进位
            for(j=0;j<maxn;j++)
            {
                int s=f[j]*i+c;
                f[j]=s%10;
                c=s/10;
            }
        }
        for(i=maxn-1;i>=0;i--) if(f[i]) break;
        for(j=i;j>=0;j--) printf("%d",f[j]);
        printf("\n");
    }
    return 0;
}

#include<stdio.h>
#include<string.h>
int main ()
{
    int t,max,n,c,i,j,a[90001];
    while (scanf ("%d",&n)==1)
    {
        memset(a,0,sizeof(a));
        a[0]=1;max=1;
        for (i=1;i<=n;i++)
        {
            c=0;
             for (j=0;j<max;j++)
            {
                a[j]=a[j]*i+c;
                c=a[j]/10;
                a[j]%=10;
                if(c&&max<=j+1)
                max++;
            }
        }
if (a[max])
printf ("%d",a[max]);
       for (j=max-1;j>=0;j--)
       printf ("%d",a[j]);
       printf ("\n");
    }
    return 0;
}
全部评论

相关推荐

05-13 00:41
已编辑
北京邮电大学 Java
理性的杰克刷牛客:ai肯定要有的,最好学一下agent方向加一个智能客服什么的进去,并且多加点什么skill,mcp啥的,另外你现在的项目深度有些浅,这些功能都太简单了,而且也不是真正能扛高并发的实现,没有什么太大的亮点,可以去网上找点更有深度的项目。可以先投一些中小厂,有实习经历以后再去大厂,你现在这个大厂可能机会不大
点赞 评论 收藏
分享
03-29 17:05
门头沟学院 Java
asdasdasda...:我前段时间找工作焦虑,有几天连续熬夜熬穿了,然后心脏突然不舒服,立马躺床上睡觉了,然后第二天还是不舒服,去看医生说是心率不齐,吓得我后面天天早早睡觉,调养身体,过了好几天才好过来。所以真的,工作这些东西哪有那么重要,最多钱多一点钱少一点,降低物欲。活着才是最重要的,现在想想真的后怕
如何排解工作中的焦虑
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务