Cod sursa(job #2849039)

Utilizator silasnatanaelSilas Natanael silasnatanael Data 14 februarie 2022 13:36:40
Problema Factorial Scor 90
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 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;
        }
    // if (p<0) n=-1;


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