Pagini recente » Borderou de evaluare (job #3163476) | Download-uri | Borderou de evaluare (job #2640687) | Cod sursa (job #2760380)
#include <fstream>
using namespace std;
int n,st,dr;
int main() {
ifstream fin("fact.in");
ofstream fout("fact.out");
fin>>n;
st=1;
dr=n*5;
while (st<=dr) {
int mid=(st+dr)/2;
int nr=mid;
int sol=0;
int m=5;
while (nr>=m) {
sol+=nr/m;
m*=5;
}
if (sol>=n) {
dr=mid-1;
}
else {
st=mid+1;
}
}
int nr=st;
int sol=0;
int m=5;
while (nr>=m) {
sol+=nr/m;
m*=5;
}
if (sol==n) fout<<st;
else fout<<-1;
return 0;
}