Pagini recente » Cod sursa (job #147041) | Monitorul de evaluare | Cod sursa (job #451108) | Cod sursa (job #1254693) | Cod sursa (job #1343691)
#include <fstream>
#include <iostream>
using namespace std;
long p;
ifstream f("fact.in");
ofstream g("fact.out");
long long factorial(long long s,long long t)
{
if (s>t) return 1;
long long m = (s+t)/2;
return factorial(s,m-1)*factorial(m+1,t)*m;
}
int nrcif(long long x)
{
if (x%10 == 0) return nrcif(x/10)+1;
else return 0;
}
int main()
{
f>>p;
f.close();
int i=p;
cout<<factorial(1,45);
while (i<32000)
{
if (nrcif(factorial(1,i)) == p) {g<<i; break;}
i++;
}
g.close();
}