雕刻时光

just do it……nothing impossible
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

大阶乘求右边开始不为零的数——USACO3.2.1

Posted on 2011-03-06 21:27  huhuuu  阅读(318)  评论(0编辑  收藏  举报
有规律,每次乘i后,记录第i个乘数的结果,去掉右边的零后,取1000的余数保存,继续乘i+1……
View Code
#include<stdio.h>
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
int a=1,i;
for(i=2;i<=n;i++)
{
a
*=i;
while(a%10==0)
a
/=10;
a
=a%1000;
}
printf(
"%d\n",a%10);
}
}