Cod sursa(job #261181)

Utilizator Addy.Adrian Draghici Addy. Data 17 februarie 2009 22:12:00
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <stdio.h>

long long t,p,n,u,nr0,x,y,nc;

int main(){

  FILE *f = fopen("fact.in", "r");
  FILE *g = fopen("fact.out", "w");

  x=0;
  y=4000000000;

  fscanf(f,"%lld",&p);

  while (x<=y) {
    n=x+(y-x)/2;
    t=5;
    nr0=0;
    while (t<=n) {
      nr0+=n/t;
      t*=5;
    }
    if (nr0==p)
      nc=n;
    if (nr0>=p) {
      y=n-1;
    }
    else
      x=n+1;
  }
  if (nc)
    fprintf(g,"%lld",nc);
  else
    fprintf(g,"-1");
  if (p==0)
    fprintf(g,"1");

  fclose(f);
  fclose(g);

  return 0;
}