Cod sursa(job #914645)

Utilizator swim406Teudan Adina swim406 Data 14 martie 2013 12:31:45
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <stdio.h>

using namespace std;

int P;

int zeros(int x) {
    int rez = 0;
    while (5 <= x) {
        rez += x/5;
        x /= 5;
    }
    return rez;
}

int cautare (int a, int b) {
    int c = (a+b)/2;
    int nr = zeros(c);
    if (nr == P) {
        while (c % 5 != 0)
            --c;
        return c;
    }
    if (nr > P && c != b) return cautare (a, c);
    if (nr < P && c + 1 != a) return cautare (c + 1, b);
}
int main() {
    freopen ("fact.in", "r", stdin);
    freopen ("fact.out", "w", stdout);
    scanf ("%d", &P);
    if (P == 0) printf ("%d", 1);
    else {
        int N = 50000;
        int result;
        result = cautare (1, N);
        printf("%d", result);
    }
    return 0;
}