Cod sursa(job #920048)

Utilizator DarkyAngelDarky Angel DarkyAngel Data 19 martie 2013 23:24:08
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <fstream>

using namespace std;

ifstream f("fact.in");
ofstream g("fact.out");

long powcount(long k) {
    long i,p=5;
    for(i=0;p<k;i++) {
        p*=5;
    }
    return i;
}

long pow(long k) {
    long p=1;
    for(long i=0;i<k;i++) {
        p*=5;
    }
    return p;
}

long powrez(long k) {
    long p=0;
    for(long i=1;i<=k;i++) {
        p+=pow(i);
    }
    return p;
}

long powis(long k) {
    long i;
    for(i=1;i<k;i++) {
        i*=5;
    }
    if(i==k)
        return 0;
    else
        return 1;
}

int main() {
    long p;
    f>>p;
    if(p==0)
        g<<1;
    else if(powis(p))
        g<<-1;
    else {
        long min=0;
        for(long i=0;i<p;i++)
            min+=5;
        min-=powrez(powcount(p));
        g<<min;
    }

}