Cod sursa(job #1026873)
| Utilizator | Data | 12 noiembrie 2013 09:12:42 | |
|---|---|---|---|
| Problema | Factorial | Scor | 5 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.51 kb |
#include<iostream>
#include<fstream>
using namespace std;
int main()
{long long p,i=0,nr=0,nr2=0,nr5=0,min,cat,rest;
ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
if(p==0)
g<<1;
else
{
while(nr<p)
{i=i+5;cat=i/5;
while(cat>0)
{nr5=nr5+1;cat=cat/5;}
cat=i/2;rest=i%2;
if(rest==0)
nr2=nr2+1;
while(cat>0)
{nr2=nr2+cat;cat=cat/2;}
if(nr2>nr5)
min=nr5;
else
min=nr2;
if(min>=p)
nr=min;}
}
if(nr==p)
g<<i;
else
g<<-1;
f.close();
g.close();
return 0;
}