Cod sursa(job #2377299)

Utilizator RobertuRobert Udrea Robertu Data 9 martie 2019 15:26:07
Problema Factorial Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
using namespace std;

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

long long int dr = 5000000000;

int main()
{
   long long int p, fr5, st = 0, mid;

    f >> p;
   //cin >> p;

    if( p == 5 )
    {
        of << -1;
        return 0;
    }else if( !p )
        {
            of << -1;
            return 0;
        }

    int x;
    while(st < dr)
    {
        mid = (st + dr) / 2;
        fr5 = 0; x = 5;

        while(x <= mid)
        {
            fr5 += mid / x;
            x = x * 5;
        }
         if( fr5 >= p ) dr = mid;
        else if( fr5 < p ) st = mid + 1;

    }

    of << st;
   //cout << st;

    return 0;
}