Cod sursa(job #2675450)

Utilizator KarinAAndrei Karina KarinA Data 21 noiembrie 2020 18:35:04
Problema Factorial Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream in ("factorial.in");
ofstream out ("factorial.out");

long long nr,put,n,cnt;
long long st=1,dr=1000000001;

int main()
{
    in>>put;
    if(put==0)
        out<<1;
    else
    {
        while(st <= dr && cnt == 0)
        {
            nr=(st+dr)/2;
            n=nr;
            int a=0,b=5;
            while(n >= b)
            {
                a+=n/b;
                b=b*5;
            }
            if(a == put)
            {
                cnt=1;
                nr-=nr%5;;
            }
            else
                if(a > put)
                    dr=nr-1;
            else
                st=nr+1;
        }
        if(cnt == 0)
            out<<"-1";
        else
            out<<nr;
    }
    return 0;
}