Cod sursa(job #675843)
| Utilizator | Data | 8 februarie 2012 12:46:17 | |
|---|---|---|---|
| Problema | Factorial | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.65 kb |
#include<stdio.h>
FILE *f, *g;
long p, i, j, t, y, s, s2, o, o2;
int main()
{
f=fopen("fact.in", "r");
g=fopen("fact.out", "w");
fscanf(f, "%ld", &p);
i=10;
while(1)
{
t=5;
y=2;
o=0;
o2=0;
do
{
s=i/t;
o+=s;
t*=t;
}
while(s);
do
{
s2=i/y;
o2+=s2;
y*=y;
}
while(s2);
if(o2>=o && o==p)
{
fprintf(g, "%ld", i);
break;
}
else if(o2>=o && o>p)
{
fprintf(g, "-1");
break;
}
i++;
}
fclose(f);
fclose(g);
return 0;
}
