Pagini recente » Cod sursa (job #907628) | Cod sursa (job #2692784) | Cod sursa (job #284748) | Cod sursa (job #1216420) | Cod sursa (job #2841386)
#include <bits/stdc++.h>
using namespace std;
int zerouri(int n){
int nr = 0;
int pwr = 5;
while(n >= pwr){
nr+= n/pwr;
pwr *= 5;
}
return nr;
}
int main(void){
ofstream cout("fact.out");
ifstream cin("fact.in");
int p;
cin >> p;
//cautam binar de la 1 .... 10^8
int st = 1;
int dr = 10e8;
int mij = 0;
int n = -1;
while(st <= dr){
mij = (st+dr) / 2;
int zr = zerouri(mij);
if(zr == p){
n = mij;
dr = mij-1;
}else if(zr < p){
st = mij + 1;
}else{
dr = mij-1;
}
}
cout << n;
}