Cod sursa(job #2137993)

Utilizator TrolliciousSir Troll Trollicious Data 21 februarie 2018 10:43:51
Problema Factorial Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
long long  p,s=1,d=100000000,mij;
long long nrzero(long long x)
{
    long long i,nr=0;
    for(i=5; i<=x; i=i*5)
        nr=nr+x/i;
    return nr;
}
long long caut(long long s,long long d)
{
    if(s>d) return -1;
    else
    {
        mij=(s+d)/2;
        if(nrzero(mij)==p&&mij%5==0) return mij;
        else if(nrzero(mij)==p&&mij%5!=0) return mij=mij-(mij%5);
        if(nrzero(mij)<p) return caut(mij+1,d);
        if(nrzero(mij)>p) return caut(s,mij-1);
    }
}

int main()
{
    f>>p;
    if(p==0) g<<"1";
   else g<<caut(s,d);


    return 0;
}