Pagini recente » Cod sursa (job #993384) | Cod sursa (job #2846600) | Cod sursa (job #1395983) | Cod sursa (job #1686938) | Cod sursa (job #2302649)
#include<fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int nr_zero(long long n){
long long numara_zerouri=0;
long long numitor=5;
while(n>=5){
numara_zerouri=numara_zerouri+n/numitor;
numitor=numitor*5;
}
return numara_zerouri;
}
int main(){
int P;
long long st=1,dr=2000000000,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;
}