Cod sursa(job #175192)

Utilizator RoflmaoPatru Ovidiu Roflmao Data 9 aprilie 2008 17:57:50
Problema Factorial Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream.h>
#include<iostream.h>
#include<values.h>
#include<math.h>
int main()
{
  long p,min=0,total,x,i,max;
  fstream f,g;
  f.open("fact.in",ios::in);
  f>>p;
  f.close();
  max=500000000;
  x=250000000;
  min=0;
  if(p==0)
    g<<1;
  else
  {
  g.open("fact.out",ios::out);
  for(i=1;i<=28;i++)
  {
    total=0;
    for(i=1;i<=12;i++)
      total=x/pow(5,i)+total;
    if(total==p)
    {
      x=x-x%5;
      g<<x;
      break;
    }
    else
      if(total<p)
      {
	min=x;
	x=(min+max)/2;
      }
      else
      {
	max=x;
	x=(min+max)/2;
      }
  }
  if(i==30)
    g<<-1;
  }
  g.close();
  return 0;
}