Pagini recente » Cod sursa (job #772270) | Cod sursa (job #1426328) | Cod sursa (job #2419431) | Cod sursa (job #1218321) | Cod sursa (job #2302646)
#include<iostream>
#include<fstream>
#include<cmath>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int nr_zero(int n){
long long numara_zerouri=0;
long long numitor=5;
while(n>=5){
numara_zerouri=numara_zerouri+n/numitor;
numitor=numitor*5;
}
}
int main(){
int P;
long long st=1,dr=int(pow(2,30)),med,sol,lm;
fin>>P;
bool ok=1;
while(st<=dr){
med=(st+dr)/2;
lm=nr_zero(med);
if(lm==P){
sol=med;
dr=med-1;
ok=0;
}
else{
if(lm>P)
dr=med-1;
else st=med+1;
}
}
if(ok==1)
fout<<"-1";
else fout<<sol;
fin.close();
fout.close();
return 0;
}