Cod sursa(job #546169)

Utilizator aleph0Ionut-Gabriel Radu aleph0 Data 4 martie 2011 15:50:43
Problema Factorial Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<stdio.h>
#include<stdlib.h>
#define max(a,b) ((a) > (b) ? (a) : (b))

int nrDiv(int a, int b)
{
    int r = 0, k = 0;
    while(r == 0){
        r = a % b;
        if(r == 0){
            k++;
            a /= b;
        }
        else
            break;
    }
    return k;
}

int minDiv(int p, int r)
{
    int i = 0;
    int q = 0;
    while(q < p){
        i += r;
        q += nrDiv(i,r);
    }
    return i;
}

int main()
{
    FILE *f = fopen("factorial.in","r");
    FILE *g = fopen("factorial.out","w");
    int p, rez;
    fscanf(f,"%d",&p);
    if(p == 0){
        fprintf(g,"%d ",1);
        fclose(f);
        fclose(g);
        return 0;
    }
    rez = max(minDiv(p,2),minDiv(p,5));
    fprintf(g,"%d ",rez);
    fclose(f);
    fclose(g);
    return 0;
}