Cod sursa(job #2204118)

Utilizator AnnaLipianuLipianu Ana AnnaLipianu Data 14 mai 2018 17:50:28
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <cstdio>
int fact(int a)
{
    int f=1,s=0;
    while(f*5<=a)
    {
        f*=5;
        s=s+a/f;
    }
    return s;
}
int main()
{
    int x;
    freopen("fact.in","r",stdin);
    freopen("fact.out","w",stdout);
    scanf("%d",&x);
    if(x==0)printf("1");
    else
    {
       int st,m,sum,nr;
       long long dr;
        st=1;
        dr= 5 * x;
        while(st<=dr)
        {
            m= (st + dr)/2;
            sum=fact(m);
            if(sum<x)st=m+1;
            else
            {
                if(sum==x)nr=m;
                dr=m-1;
            }
        }
        printf("%d",nr);
    }
    return 0;
}