Pagini recente » Cod sursa (job #775703) | Cod sursa (job #2502465) | Cod sursa (job #513162) | Cod sursa (job #2140694) | Cod sursa (job #365900)
Cod sursa(job #365900)
#include <iostream>
#include <fstream>
using namespace std;
long v[]={5, 25, 625, 3125, 15625, 78125, 390625, 1953125, 9765625, 48828125};
int len=10;
int p;
int returnputere(int n) {
int j=0, i;
for(i=0; i<len; i++) {
j+=(int)(n/v[i]);
}
return j;
}
int cautabinar(int val, int st, int dr) {
while(st<dr) {
int mij=(st+dr)/2;
int q=returnputere(mij);
if(q==val) { return mij; }
else if(q<val) { st=mij+1; }
else if(q>val) { dr=mij-1; }
}
return -1;
}
int main() {
long i;
fstream f1, f2;
f1.open("fact.in", ios::in);
f1>>p;
f1.close();
i=cautabinar(p, 1, 10000000);
f2.open("fact.out", ios::out);
f2<<i-i%5<<endl;
f2.close();
return 0;
}