Pagini recente » Cod sursa (job #2184291) | Cod sursa (job #2021703) | Cod sursa (job #24529) | Cod sursa (job #92712) | Cod sursa (job #399413)
Cod sursa(job #399413)
#include <fstream>
using namespace std;
unsigned nr5(int a){
unsigned k=0,p=5;
for(unsigned i=5;i<a;i*=5){
k+=a/i;
}
return k;
}
int main(){
fstream fin("fact.in",ios::in);
fstream fout("fact.out",ios::out);
unsigned beg=0,end=1<<31,mdl,p;
int res=-1;
fin>>p;
while(beg<=end){
unsigned mdl=beg+(end-beg)/2;
unsigned n5=nr5(mdl);
if(n5<p){
beg=mdl+1;
}else if(n5>p){
end=mdl-1;
}else{
res=mdl;
break;
}
}
if(res!=-1){
fout<<(res/5)*5;
}else{
fout<<-1;
}
fin.close();
fout.close();
return 0;
}