Cod sursa(job #799537)

Utilizator dariusdariusMarian Darius dariusdarius Data 19 octombrie 2012 12:01:47
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <stdio.h>
int zero(int n)
{
    int r=0;
    while(n>=5)
	{
        r+=n/5;
        n/=5; 
	}
    return r; 
}
int search(int p)
{
    long long i,pas=1<<30;
    i=0;
    while(pas!=0)
	{
        if(zero(i+pas)<p)
          i+=pas;
        pas/=2; 
	}
    return i+1; 
}
int main()
{
    int p,s;
    freopen("fact.in","r",stdin);
    freopen("fact.out","w",stdout);
    scanf("%d",&p);
    s=search(p);
    if(zero(s)==p)
      printf("%d\n",s);
    else
      printf("-1\n");
	return 0;
}