Cod sursa(job #1722361)

Utilizator CalarisPredut Denis Stefanita Calaris Data 27 iunie 2016 21:50:09
Problema Factorial Scor 75
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <iostream>
#include <fstream>

using namespace std;

int tz(int number)
{
  int n,multipleOfFive,total;

  multipleOfFive = 5;
  n = number/5;
  total = 0;

  do
    {
    total+= n;
    multipleOfFive*=5;
    n = number/multipleOfFive;
    }while(n>=1);

  return total;
}

int main()
{
    ifstream f("fact.in");
    ofstream g("fact.out");

    int n,numarMinim,nr=0;
    unsigned long long p,a,b,c;
    f>>n;

    a = 0;
    //b = 7000000;
    b = 92233720368547758;
      //9223372036854775806
    c = (b + a)/2;
    p = tz(c);
    if(n==0)g<<1;
    else
        {
    while(p!=n)
        {
        if(p<n)
            {
            a = c+1;
            }
        else if(p> n)
            {
            b = c - 1;
            }
        else break;
       cout<<c<<"\n";
        c = (a + b)/2;
        p = tz(c);
        if(p == n || a == b) break;
        }
    if( a == b && p!=n)g<<-1;
    else
        {   while(c%5!=0)--c;
            g<<c;
        }
    }
    return 0;
}