题解 | #阶乘之和#

阶乘之和

https://ac.nowcoder.com/acm/problem/16780

#include<iostream>
using namespace std;

const int N = 1010;
int a[N],res[N];
int n,s;

int main()
{
    cin >> n;
    res[0] = a[0] = 1;
    for(int i = 2;i <= n;i++)
    {
        for(int j = 0;j < N;j++)
        {
            a[j] = s + a[j] * i;
            s = a[j] / 10;
            a[j] %= 10;
        }
        for(int j = 0;j < N-1;j++)
        {
            res[j] += a[j];
            res[j+1] += res[j] / 10;
            res[j] %= 10;
        }
    }
    int len = N;
    while(!res[len-1] && len > 1 ) len--;
    for(int i = len-1;~i;i--) cout <<res[i];
    return 0;
}
全部评论

相关推荐

10-17 13:54
上海大学 运营
雾凇岛:这还说什么了,冲了兄弟们
点赞 评论 收藏
分享
10-10 01:10
已编辑
深圳大学 测试开发
面了100年面试不知...:六月到九月,四个项目一个实习,是魔丸吗
投了多少份简历才上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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