Pagini recente » Rating Simion Theodor-Emil (teo9b) | Cod sursa (job #2612071) | Cod sursa (job #2691351)
// Example program
#include <fstream>
#include<algorithm>
#define NMAX 100000005
using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int nrz(int n){
int rez=0;
for(int i=5;i<=n;i*=5){
rez+=(n/i);
}
return rez;
}
int main()
{
int p,st=0,dr=NMAX,mij;
cin>>p;
if(p==0){cout<<1;return 0;}
while(dr-st>1){
mij=(st+dr)/2;
if(nrz(mij)==p){
if(!(mij%5)){cout<<mij;}
else{cout<<mij-(mij%5);}
return 0;
}
if(nrz(mij) <p){
st=mij;
}
if(nrz(mij) >p){
dr=mij;
}
}
if(nrz(st)==p ){cout<<mij;}
else cout<<-1;
return 0;
}