Cod sursa(job #236317)
Utilizator | Data | 27 decembrie 2008 10:17:54 | |
---|---|---|---|
Problema | Factorial | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.35 kb |
#include<iostream>
#include<stdio.h>
#define ui unsigned int
FILE *f=fopen("fact.in","r"),*g=fopen("fact.out","w");
inline ui zer(ui i)
{
ui t=0;
while(i) t+=i/=5;
return t;
}
int main()
{
ui nr,i,n;
fscanf(f,"%d",&n);
for(i=nr=1<<30;nr;nr>>=1)
i-=i-nr>=1&&zer(i-nr)>=n?nr:0;
i=zer(i)==n?i:-1;
fprintf(g,"%d\n",i);
return 0;
}