Sunday, February 27, 2011

568 - Just the Facts

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstdlib>
using namespace std;
long int power(int b,int p);
int main()
{
    //freopen("in.txt","r",stdin);
    long int N,F,i,d,p;
    while(scanf("%ld",&N)==1)
    {
        F=1;
        for(i=2;i<=N;i++)
        {
            F*=i;
            p=log10(i)+4;
            d=power(10,p);
            while(F%10==0)
                F/=10;
            F%=d;
        }
        printf("%5ld -> %ld\n",N,F%10);
    }
    exit(0);
}
long int power(int b,int p)
{
    long int pp=1,i;
    for(i=1;i<=p;i++)
        pp*=b;
    return pp;
}

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.