Pagini recente » Cod sursa (job #790142) | Clasamentul arhivei de probleme | Cod sursa (job #704255) | Cod sursa (job #1225911) | Cod sursa (job #2660765)
#include <fstream>
using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int main() {
long long i,st,dr,med,j;
unsigned long long p51,sum;
int last=-1,p;
cin>>p;
st=1;
dr=9223372036854775807;
while(st<=dr) {
med=st+((dr-st)/2);
sum=0;
p51=1;
i=0;
while(p51<=med) {
i++;
p51*=5;
}
p51=5;
i--;
for(j=1; j<=i; j++) {
sum+=med/p51;
p51*=5;
}
if(sum>=p) {
dr=med-1;
if(sum==p)
last=med;
} else {
st=med+1;
}
}
cout<<last;
return 0;
}