Cod sursa(job #2218325)
Utilizator | Data | 4 iulie 2018 11:47:48 | |
---|---|---|---|
Problema | Factorial | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int zero(int x)
{
int s=0,p;
p=5;
while (p<=x)
{
s=s+x/p;
p=p*5;
}
return s;
}
int cautbin(int p)
{
int dr,step,j;
dr=5*p;
step=1;
while (step<dr)
{
step<<=1;
}
for ( j=0;step;step>>=1)
{
if (j+step<=dr&&zero(j+step)<p)
{
j+=step;
}
}
return j+1;
}
int main()
{
int p;
f>>p;
g<<cautbin(p);
return 0;
}