Cod sursa(job #2076660)

Utilizator dey44andIoja Andrei-Iosif dey44and Data 26 noiembrie 2017 21:39:17
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream in("fact.in");
ofstream out("fact.out");

int caut(int v)
{
    int zerouri  = 0;
    while(v)
    {
        zerouri+=(v/=5);
    }
    return zerouri;
}

int main()
{
    int P;
    in >> P;
    int left = 1;
    int right = P * 5;
    int solutie = -1;
    while(left<=right)
    {
        int mijloc = (left + right) / 2;
        int posibil = caut(mijloc);
        if(posibil>P)
            right = mijloc - 1;
        else if(posibil==P)
        {
            solutie = mijloc;
            right = mijloc - 1;
        }
        else left = mijloc + 1;
    }
    out << solutie;
    return 0;
}