Cod sursa(job #1568826)

Utilizator EuEricCiordel Rromeo EuEric Data 14 ianuarie 2016 18:55:47
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<iostream>
#include<fstream>
using namespace std;
long long zero(long long n)
{
    int ans=0;
    while(n>=5){
        ans+=n/5;
    n/=5;
    }
    return ans;
}
int cautare(int p)
{
    long long st=1;
    long long dr=2000000000;
    while(st<dr)
    {
        long long mij=(st+dr)/2;
        if(zero(mij)==p)
            return mij-mij%5;
        else if(zero(mij)>p)
            dr=mij-1;
        else
            st=mij+1;
    }
    return -1;
}
int main()
{
    ifstream cin("fact.in");
    ofstream cout("fact.out");
 long long p;
 cin>>p;
 if(p!=0)
 cout<<cautare(p);
 else
 cout<<1;
 return 0;
}