Cod sursa(job #252684)

Utilizator loginLogin Iustin Anca login Data 4 februarie 2009 20:18:41
Problema Factorial Scor 25
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
# include <fstream>
using namespace std;
int main ()
{
    long long int p, i, j, k, nrz=0, n=0, x[100], y[100], pp=1;
    ifstream fin ("fact.in");
    ofstream fout ("fact.out");
    x[1]=1, y[1]=5;
    for (i=2;i<=14;i++)
        x[i]=x[i-1]*5+1, y[i]=y[i-1]*5;
    fin>>p;
    if (p==0)
       fout<<"1";
    else
    {
        for (i=1;i<14 && pp;i++)
            if (p>=x[i] && p<x[i+1])
            {
               for (j=y[i];nrz<p;j+=5)
               {
                   nrz=0;
                   k=i;
                   n=j;
                   while (k)
                   {
                         nrz=nrz+j/y[k];
                         --k;
                   }
               }
               if (nrz==p)
                  fout<<n, pp=0;
               else
                  fout<<"-1", pp=0;
            }
    }
    return 0; 
}