Cod sursa(job #931101)
| Utilizator | Data | 27 martie 2013 23:29:46 | |
|---|---|---|---|
| Problema | Factorial | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int p;
int Count(int n,int x)
{int res=0;
while(n>=x) { res+=n/x; n/=x;}
return res;
}
void Cbin()
{ int l=1,r=5*p+5,mid,x;
while(l<r)
{ mid=(l+r)/2; x=Count(mid,5);
if (p>x) l=mid+1; else r=mid;
}
mid=(l+r)/2; x=Count(mid,5);
if (p>x) mid++;
x=Count(mid,5);
if (x==p) g<<mid; else g<<"-1";
}
int main()
{ f>>p;
Cbin();
return 0;
}
