Cod sursa(job #386566)

Utilizator miculprogramatorA Cosmina - vechi miculprogramator Data 25 ianuarie 2010 11:03:14
Problema Factorial Scor 100
Compilator cpp Status done
Runda 123235125 Marime 0.69 kb
#include <iostream.h>
#include <fstream.h>
int st=1,dr=2000000000,mij,n;  
int p;
int minim;
int fact(int n)
{
     int s,put;
     s = 0;
     put= 5;
     while (n/put > 0)
        { 
            s = s + n/put;
            put = put * 5 ;
        }
     return s;
}
int main()
{
  ifstream f("fact.in");
  ofstream g("fact.out");
    f>>p;
    f.close();
    minim = -1;
    while (st<=dr)
      {
      mij = (st + dr) / 2; 
      int rezultat = fact(mij); 
      if (p == rezultat) {minim = mij; dr = mij - 1;} 
      if (p > rezultat) st = mij + 1;
         else
          if (p < rezultat) dr = mij - 1;
      }
      g<<minim;
    g.close();
    return 0;
}