Cod sursa(job #1337593)

Utilizator BlackNestaAndrei Manaila BlackNesta Data 9 februarie 2015 11:26:41
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>

using namespace std;
ifstream fin ("fact.in");
ofstream fout ("fact.out");
int main()
{
    int n , c ;
    long long st , dr , m , x ;
    st=1 ;dr=1000000000 ;
    fin >> n ;
    while(st<=dr)
        {
            m=(st+dr)/2 ;
            x=m ;
            c=0 ;
            while(m!=0)
                {
                    c=c+m/5 ;
                    m=m/5;
                }
            if(c==n)
                {
                    if(x-x%5==0) fout << "1" ;
                        else fout << x-x%5 ;
                    dr=-1 ;
                }
            else if (c>n) dr=(st+dr)/2-1 ;
                else st=(st+dr)/2+1 ;
        }
    if(dr!=-1) fout << "-1" ;
    return 0;
}