Cod sursa(job #545753)
| Utilizator | Data | 3 martie 2011 21:15:13 | |
|---|---|---|---|
| Problema | Factorial | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.46 kb |
#include<iostream.h>
#include<fstream.h>
int catezerouri(int n)
{
int k=0,x;
if(n<=4) return 0;
int i=1;
while(i<=n)
{ x=i;
while(x%5==0)
{
k++;
x=x/5;
}
i++;
}
return k;
}
int main()
{
int p;
ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
int mij,st=0, dr=1000000;
while(1)
{
mij=(st+dr)/2;
if(catezerouri(mij)==p) {g<<mij; break;}
else
if(catezerouri(mij)<p) st=mij;
else dr=mij;
}
}