Cod sursa(job #914664)

Utilizator swim406Teudan Adina swim406 Data 14 martie 2013 12:38:04
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 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 i=1,pas=1<<29;
    while(pas!=0) {
        if(zeros(i+pas)<P)
            i+=pas;
        pas/=2;
    }
    return i;
}
int main() {
    freopen ("fact.in", "r", stdin);
    freopen ("fact.out", "w", stdout);
    scanf ("%d", &P);
    if (P == 0) printf ("%d", 1);
    else {
        int N = 50000000;
        int result;
        result = cautare();
        if (zeros(result) == P) printf("%d", result);
        else printf ("-1");
    }
    return 0;
}