Cod sursa(job #1002634)

Utilizator CosminnnChirica Cosmin Cosminnn Data 28 septembrie 2013 13:05:13
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <cstdio>
#include <iostream>


using namespace std;

inline void Solve()
{
    int p,st,dr,mij,k,mult;

    FILE *f = fopen("fact.in","r");
    fscanf(f,"%d ",&p);
    fclose(f);

    st=1;dr=500000000;
    while( st<=dr )
    {
        mij = (st+dr)/2;
        mult = 5;
        k = 0;
        while( mult <= mij )
        {

            k += mij/mult;
            mult *=5;
        }
        if( k== p)break;
        if( k >p )
            dr = mij-1;
        else
            st = mij+1;
    }
    mij = mij - mij%5;

    FILE *g = fopen("fact.out","w");

    if(st<=dr)
        fprintf(g,"%d ",mij);
    else
        fprintf(g,"%d ",-1);
    fclose(g);
}

int main()
{
    Solve();
    return 0;
}