Cod sursa(job #1673281)

Utilizator bogdanmarin69Bogdan Marin bogdanmarin69 Data 3 aprilie 2016 16:55:24
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <fstream>
using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int nz(int x)
{
    int p5 = 5, ans = 0;
    while(p5<=x)
    {
        ans = ans + x/p5;
        p5 = p5 * 5;
    }
    return ans;
}

int main()
{
    int p;
    cin>>p;
    int st = 1, dr = 5*p;
    while(st<=dr){
        int mid = (st+dr)/2;
        if(nz(mid)<p)
            st = mid + 1;
        else
            dr = mid - 1;
    }
    if(nz(st)==p)
        cout<<st;
    else
        cout<<-1;
    return 0;
}