Pagini recente » Cod sursa (job #1938461) | Cod sursa (job #218761) | Cod sursa (job #2775863) | Cod sursa (job #1260189) | Cod sursa (job #2841381)
#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 = 1e8;
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;
}