Cod sursa(job #805805)

Utilizator NastureNasture Anca Nasture Data 1 noiembrie 2012 10:34:54
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<stdio.h>
int put(int n){
    int p1=0,c5=5;
    while(n/c5>=1){
        p1+=n/c5;
        c5*=5;
    }
    return p1;
}
int main(){
    int l1,l2,n,p,puterea;
    freopen("fact.in","r",stdin);
    freopen("fact.out","w",stdout);
    scanf("%d",&p);
    l1=1;
    l2=1<<30;
    bool pp=false;
    while(l1<=l2&&!pp){
        n=(l1+l2)/2;
        puterea=put(n);
        if(puterea==p)
            pp=true;
        else
            if(puterea>p)
                l2=n-1;
            else
                l1=n+1;
    }
    if(pp)
        printf("%d",n-n%5);
    else
        printf("-1");
    return 0;
}