Cod sursa(job #1603588)
| Utilizator | Data | 17 februarie 2016 17:50:25 | |
|---|---|---|---|
| Problema | Factorial | Scor | 15 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.52 kb |
#include <iostream>
#include <fstream>
using namespace std;
int main()
{long x,y,p,u,ui;
fstream f("fact.in",ios::in);
fstream g("fact.out",ios::out);
f>>p;
x=5; //nr care trebuie aflat
y=5; //ultime putere a lui 5
u=1; //nr de 0-uri
ui=1; //numarul de 0-uri al lui y
//nr de 0-uri la o noua putere u=ui+y;
if(p==0)
g<<1;
else
{while(u<p)
{x++;
if(x==y*5)
{
u=y+ui;
y=y*5;
ui=u;
}
else
{if(x%5==0)
u++;}
}
if(u!=p)
g<<-1;
else
g<<x;
}
}
