Cod sursa(job #2664965)

Utilizator TghicaGhica Tudor Tghica Data 29 octombrie 2020 20:15:29
Problema Factorial Scor 95
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <stdio.h>

int main() {
  FILE *fin, *fout;
  fin = fopen( "fact.in", "r" );
  fout = fopen( "fact.out", "w" );
  int p, st, dr, mij, put, l;
  fscanf( fin, "%d", &p );
  st = 0;
  dr = p * 5;
  while ( dr > 1 + st ) {
    put = 1;
    l = 0;
    mij = st + ( dr - st ) / 2;
    while ( put <= mij ) {
      put *= 5;
      l = l + mij / put;
    }
    if ( l < p )
      st = mij;
    else
      dr = mij;
  }
  put = 1;
  l = 0;
  while ( put <= dr ) {
    put *= 5;
    l = l + dr / put;
  }
  if ( l != p )
    dr = -1;
  fprintf( fout, "%d", dr );
  return 0;
}