Cod sursa(job #1703333)

Utilizator serban_andreiserban andrei-catalin serban_andrei Data 16 mai 2016 20:14:08
Problema Factorial Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <bits/stdc++.h>

#define nmax 100000010

using namespace std;

int st=0,dr=nmax,mijloc,da,P;

unsigned long long nrzero(int n)
{
    int p=5;
    unsigned long long suma=0;
    while(n/p)
    {
        suma=suma+n/p;
        p=p*5;
    }
    return suma;
}

int main()
{

    ifstream f("fact.in");
    ofstream g("fact.out");

    f>>P;

    while(st<=dr)
    {
        mijloc=(st+dr)/2;
        if(nrzero(mijloc)>=P)
        {

            dr=mijloc-1;
            da=mijloc;

        }
        else st=mijloc+1;
    }
    if(P==0)
    {
        g<<1;
        return 0;
    }
    while(da%5)
    {
        da--;
    }
    g<<da;

    return 0;

}