Cod sursa(job #3263645)

Utilizator Mihnea07Rotaru Mihnea Mihnea07 Data 15 decembrie 2024 18:18:39
Problema Factorial Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <bits/stdc++.h>

using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");

long long p;

int fact(long long n)
{
    long long  sum=0;
    long long  c=5;
    while(n>=c)
    {
        sum+=n/c;
        c*=5;
    }
    return sum;
}

int main(){


    in>>p;
    long long st=1,dr=100000005;
    long long  res=-1;
    while(st<=dr)
    {
        long long  mid=(st+dr)/2;
        if(fact(mid)>p)
        {
            dr=mid-1;
        }
        else if(fact(mid)==p)
        {
            dr=mid-1;
            res=mid;
        }
        else{
            st=mid+1;
        }
    }
    out<<res;


    return 0;
}