Cod sursa(job #471434)

Utilizator andra23Laura Draghici andra23 Data 18 iulie 2010 22:21:47
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<fstream>
#include<iostream>
using namespace std;

int ff(long long n){
    long long p = 5;
    int nr = 0;
    while (n/p != 0){
        nr = nr + n/p;
        p = p*5;
    }
    return nr;
    
}

int main(){
    ifstream f("fact.in");
    ofstream g("fact.out");
    int p; 
    f>>p;
    long long n, st, dr, m; 
    int x;
    st = 1; dr = 6103515625LL;
    m = (st + dr)/2;
    x = ff(m);
    while (st <= dr && x != p){
        if (p < x)
            dr = m - 1;
        else
            st = m + 1;
        m = (st + dr)/2;
        x = ff(m); 
    }
    if (st > dr)
        g<<"-1"<<endl;
    else g<<(m-m%5);
    
    return 0;
}