Cod sursa(job #2222385)

Utilizator Asgari_ArminArmin Asgari Asgari_Armin Data 16 iulie 2018 22:26:13
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <cstdio>
#include <iostream>

using namespace std;

int thl ( int a ) {
    int c = 5 , s = 0;
    while ( c <= a ) {
        s = s + a / c;
        c *= 5;
    }
    return s;
}

void caut_bin ( int p ) {
    int  med , le , ri , ans = -1;
    le = 0;
    ri = 5 * p;
    while ( le <= ri ) {
        med = ( le + ri ) / 2;
        if ( thl ( med ) > p )
            ri --;
        else if ( thl ( med ) < p )
            le ++;
        else {
            ans = med;
            break;
        }
    }
    cout << ans;
}

int main() {
    freopen ( "fact.in" , "r" , stdin );
    freopen ( "fact.out" ,"w" , stdout );
    int p;
    scanf ( "%d" , &p );
    caut_bin ( p );
    return 0;
}