CodeForce 633 B A Trivial Proble m

3039 ワード

転送ゲート:http://codeforces.com/problemset/problem/633/B
 
定数mをあげます.いくつかの数を見つけてください.この数の階乗の最後のm位です.
全部0です
明らかに末尾に0があります.10で割って5*2に変えられます.
5の倍数を探します.(5があれば2があります.)
 
——————————————————————————————————————————————————————————————————————————————
スラグの意見は勝手に転載します.
#include<cstdio>
int main()
{
    long long n,k=0;       //  i      5      25    5*5 4*5 3*5 2*5 5,6 5 
    scanf("%I64d",&n);
    for(int i=5;;i=i+5)
    {
        long long temp=i;
        while(temp%5==0)
        {
            temp /= 5 ;
            k++;
        }
        if(k>=n)
            if(k==n)
            {
                printf("5
"); printf("%d %d %d %d %d",i ,i+1,i+2,i+3,i+4 ); break; } else { printf("0"); break; } } }