Cod sursa(job #139638)

Utilizator timocetimoce ioana timoce Data 20 februarie 2008 15:00:27
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
#include <iostream>
#include <math.h>

using namespace std;

unsigned long divizori(unsigned long &x)
{
     unsigned long putere=0,cinci=0;
     while (cinci*5+1<=x){cinci=cinci*5+1; putere=putere+1;}

     x=x-cinci;
    
     return (unsigned long)ceil(pow(5,putere));
     }
     
int main()
{
    unsigned long p,n,aux;
    ifstream f("fact.in");
    f>>p;
    f.close();
   
    n=0;
unsigned long adun;

if (p==0) n=1;
else
while (p>0)
 {adun=divizori(p);
  n=n+adun;
}        
     
       

ofstream g("fact.out");
 g<<n;
g.close();
      return 0;
}