Cod sursa(job #1846650)

Utilizator ovidiu_zic@yahoo.comPurecel Mihai [email protected] Data 13 ianuarie 2017 20:30:48
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
const int L = 30;
int p;
int zero(int n){
    int nr0 = 0;
    while(n!=0){
        nr0+=n/5;
        n/=5;
    }
    //out<<"numarul de zerouri este "<<nr0<<"\n";
    return nr0;
}

int cauta(int p){
    int r=0, pas=1<<L;
    while(pas!=0){
        if(zero(r+pas)<p)
            r+=pas;
        pas/=2;
        //out<<"curent: "<<r<<" \n";
    }
    ++r;
    if(zero(r) != p)
        return -1;
    return r;
}


int main()
{
    in>>p;
    out<<cauta(p);
    return 0;
}