| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1635 人关注过本帖, 2 人收藏
标题:运行时间太长,求简化,在5000ms计算10000的阶乘
取消只看楼主 加入收藏
嗜血老妖
Rank: 3Rank: 3
来 自:江西
等 级:论坛游侠
威 望:2
帖 子:102
专家分:163
注 册:2013-3-25
结帖率:60%
收藏(2)
已结贴  问题点数:20 回复次数:1 
运行时间太长,求简化,在5000ms计算10000的阶乘
#include <iostream>
#define N 50000
using namespace std;
int main()
{
int p[N],i,j,n,k;
 while(scanf("%d",&n)!=EOF)
   {
   k=0;
      for(i=0;i<N;i++)
          p[i]=0;
          p[N-1]=1;
          for(i=1;i<=n;i++)
            {
             int temp_jw=0;
             for(j=N-1;j>=0;j--)
              {
                p[j]=p[j]*i+temp_jw;
                temp_jw=p[j]/10;
                p[j]=p[j]%10;
              }
            }     
    for(i=0;i<N;i++)
        if(p[i]==0&&p[i+1]!=0)
        {
         k=i;
         break;
        }
     for(i=k;i<N;i++)
        cout<<p[i];   
        cout<<endl;     
   }

}
搜索更多相关主题的帖子: include 
2013-06-14 20:51
嗜血老妖
Rank: 3Rank: 3
来 自:江西
等 级:论坛游侠
威 望:2
帖 子:102
专家分:163
注 册:2013-3-25
收藏
得分:0 
感谢所有回帖者!

仗剑走天涯,网络论英雄。
2013-06-15 07:45
快速回复:运行时间太长,求简化,在5000ms计算10000的阶乘
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011546 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved