Cod sursa(job #1109900)

Utilizator chimistuFMI Stirb Andrei chimistu Data 17 februarie 2014 18:11:18
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>
#include <stdlib.h>

using namespace std;

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

int o,p;
int b = 1000000000;

int proc(int a){
    int q=0;
    while(a/5){
        q=q+a/5;
        a/=5;
    }
    return q;
}

void caut(int st, int dr){
    int mij;
    if(st < dr){
        mij = (st+dr)/2;
        o=proc(mij);
        if(o>p){
            caut(st,mij-1);
        }
        else
            if(o<p)
                caut(mij+1,dr);
            else{
                while (mij%5)
                    mij--;
                g << mij;
                exit(0);
            }
    }
}

int main()
{

    f >> p;
    if(p==0)
        g << 1;
    else
        caut(0,b);
    g << "-1";
    return 0;
}