Cod sursa(job #763819)

Utilizator doc2177Dorian Croitoru doc2177 Data 3 iulie 2012 11:16:24
Problema Factorial Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include <stdio.h>
#include <iostream>
using namespace std;

long P,N,zeros;
int main()
{
  freopen("fact.in","r",stdin);
  freopen("fact.out","w",stdout);
  cin >> P;
  if (P==0) N=1;
  else
    {
      N=5; zeros=1; 
      long tmp;
      while (zeros < P)
	{
	  N+=5;
	  ++zeros; 
	  if ((N % 25)!=0) continue;
	  else if ((N% 125)!=0) { ++zeros; continue;}
	  else
	    {
	      tmp=N/125; zeros+=2;
	      while ((tmp%25)==0)
		{
		  zeros+=2; tmp=tmp/25;
		}
	      if ((tmp%5)==0) ++zeros;
	    }
	}
      if (zeros > P) cout << "-1";
    }
  cout<< N;
  return 0;
}