Cod sursa(job #3259715)

Utilizator lessan98leonard savu lessan98 Data 27 noiembrie 2024 16:55:10
Problema Factorial Scor 30
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
#include <stdlib.h>

int main()
{
    FILE *r, *w;
    r = fopen("fact.in", "r");
    w = fopen("fact.out", "w");

    int p, start = 0, pow_of_5[11], i;
    fscanf(r, "%d%d", &p);

    if(p == 0){
        fprintf(w, "1");
        return 0;
    }

    pow_of_5[0] = 5;
    for(i = 1; i <= 10; i++){
        pow_of_5[i] = pow_of_5[i-1]*5;
    }

    while(p > 0){
        start += 5;
        i = 10;
        while(start%pow_of_5[i] != 0){
            i--;
        }
        p = p-i-1;
    }

    if(p == 0){
        fprintf(w, "%d", start);
        return 0;
    }

    fprintf(w, "-1");
    return 0;
}