首页 > 其他 > 详细

阶层之和  

时间:2014-03-27 03:03:49      阅读:507      评论:0      收藏:0      [点我收藏+]

在这个题目里面,利用同余定理可以减少很多计算量。不过从书上面的解答中知道了要利用时间函数进行代码调试,现在贴一下代码吧!

#include <stdio.h>
#include <time.h>
/* 利用同余定理求阶层之和 */
int main()
{
    const int MOD = 1000000;
    int n;
    int i,j;
    long long sum,f;
    while(~scanf("%d",&n))
{
    //对于结果观察后的技巧;
    if(n>25)
        n=25;
    sum = 0;
    for(i = 1;i <= n;i++)
    {
        f=1;
        for(j = 1;j <= i;j++)
            f = (f * j) % MOD;
        sum = (sum + f) % MOD;
    }
    printf("%lld ",sum);
    printf("%.2lf\n",(double)clock() / CLOCKS_PER_SEC);
}
    return 0;
}
但是有一个问题就是时间好像跟书上面给出来的不一样。


本文出自 “我的算法笔记” 博客,谢绝转载!

阶层之和  ,布布扣,bubuko.com

阶层之和  

原文:http://liu168ad.blog.51cto.com/7511123/1384708

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!