Cod sursa(job #1648463)

Utilizator codrinasusLimona Andrei Codrin codrinasus Data 11 martie 2016 10:19:06
Problema Factorial Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<cstdio>
using namespace std;
int P,st,dr,mij,rasp,a5,p5;
FILE *f,*g;
int main()
{
    f=fopen("fact.in","r");
    fscanf(f,"%i",&P);
    st=0;
    dr=2147483647;
    while(dr>st)
    {
        mij=(dr+st)/2;
        p5=0;
        a5=5;
        while(mij/a5!=0)
        {
            p5+=mij/a5;
            a5*=5;
        }
        if(p5>=P)
        {
            dr=mij-1;
            if(p5==P)
            rasp=mij;
        }
        else
        st=mij+1;
    }
    g=fopen("fact.out","w");
    fprintf(g,"%i",rasp);
    fclose(f);
    fclose(g);
    return 0;
}