Cod sursa(job #2324928)

Utilizator albucristianAlbu Cristian-Gabriel albucristian Data 21 ianuarie 2019 18:58:56
Problema Factorial Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>
#include <climits>
using namespace std;
int main()
{
    int s,d,n,p,c,mij,q;
    ifstream in("fact.in");
    ofstream out("fact.out");
    in>>n;
    s=1;
    d=INT_MAX-1;
    q=-1;
    while(s<d)
    {
        mij=(s+d)/2;
        p=5;
        c=0;
        while(p<=mij)
        {
            c=c+mij/p;
            p*=5;
        }
        if(c==n)
        {
            q=mij;
            break;
        }
        else
        {
            if(c<n)
            {
                s=mij+1;
            }
            else
            {
                d=mij-1;
            }
        }
    }
    while(q%5!=0&&q>0)
        q--;
    if(n==0)
        q=1;
    out<<q;
    return 0;
}