Cod sursa(job #3317115)

Utilizator RegeleOu3433Calin V. Dragos Andrei RegeleOu3433 Data 22 octombrie 2025 11:20:47
Problema Factorial Scor 90
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <stdio.h>
#define MAXP5 1490116119384765625LL

int main () {
    FILE *fin , *fout;
    long long p , stn , drn , mijn , p5n , zero;
    
    fin = fopen ( "fact.in" , "r" );
    fscanf ( fin , "%lld" , &p );
    fclose ( fin );
    
    stn = 0;
    drn = 5000000000000000000;
    while ( drn - stn > 1 ) {
        mijn = ( stn + drn ) / 2;
        p5n = MAXP5;
        zero = 0;
        while ( p5n > 1 ) {
            zero = zero + mijn / p5n;
            p5n = p5n / 5;
        }
        if ( zero < p )
            stn = mijn;
        else
            drn = mijn;
    }
    
    fout = fopen ( "fact.out" , "w" );
    fprintf ( fout , "%lld\n" , drn );
    fclose ( fout );
    
    return 0;
}