Cod sursa(job #373419)
| Utilizator | Data | 13 decembrie 2009 19:57:17 | |
|---|---|---|---|
| Problema | Factorial | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.41 kb |
#include <fstream>
using namespace std;
ifstream intrare("fact.in");
ofstream iesire("fact.out");
int main()
{
long int p,d;
intrare>>p;
int min= -1;
long int a=1,b=100000000,c,e=0;
while(a<=b)
{
c=a+(b-a)/2;
d=c; e=0;
while(d!=0)
{
d/=5;
e+=d;
}
if( p < e ) b=c+1;
else if( p > e) a=c-1;
else if(e==p) { min = c, b = c-1;}
}
iesire<<min;
return 0;
}
