Cod sursa(job #1814466)

Utilizator PinkiePie1189Preoteasa Mircea-Costin PinkiePie1189 Data 24 noiembrie 2016 00:27:59
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.8 kb
#include<stdio.h>
FILE*fin,*fout;
inline int nr_zero(int N)
{
    int put=5;
    int zero=0;
    while(N/put)
    {
        zero+=N/put;
        put*=5;
    }
    return zero;

}
inline int caut(int st,int dr,int P)
{
    while(st<=dr)
    {
        int mij=(st+dr)/2;
        int opt=nr_zero(mij);
        printf("%d\n",opt); // ca sa ne fie bine,sa nu ne fie rau
        if(opt==P)
        {
            return mij;
        }
        if(opt<P)
        {
            st=mij+1;
        }
        if(opt>P)
        {
            dr=mij;
        }
    }
    return -1;
}
int main()
{
    fin=fopen("fact.in","r");
    fout=fopen("fact.out","w");
    int P;
    fscanf(fin,"%d",&P);
    fprintf(fout,"%d",caut(1,5*P,P));
    fclose(fin);
    fclose(fout);
    return 0;
}