标题:求N!的最高位
只看楼主
guhongfeixue
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2007-10-18
 问题点数:0 回复次数:2 
求N!的最高位
[bold]Description [/bold]求N的阶乘的最高位数。
例如:
5!=120,所以最高位为1
10!=3628800,所以最高位为3
[bold]Input [/bold]每个数据包含一行,每行有一个整数N(0<=N<=10000000)
[bold]Output [/bold]对于每个测试数据,输出N!的最高位数字
[bold]Sample Input [/bold]5
10
[bold]Sample Output [/bold]1
3

请给个算法
搜索更多相关主题的帖子: 高位 Samp 数字 数据 整数 
2007-11-26 17:39
kyokistr
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-11-20
得分:0 
#include"iostream"

using namespace std;

int main()
{
    long n,i;
    double s=1;
    cin>>n;
    for(i=n;i>=1;i--)
    {
        s=s*i;
        while(s>=100000)
        {
            s=s/100000;
        }
    }
    while(s>=10)s=s/10;
    i=s;
    cout<<i<<endl;
    return 0;
}
应该能看懂吧
2007-11-26 20:09
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
没有这么简单.考虑一下大进位.

倚天照海花无数,流水高山心自知。
2007-11-26 21:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-188541-1-1.html




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

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