Pagini recente » Cod sursa (job #724570) | Cod sursa (job #2955739) | Cod sursa (job #2344202) | Cod sursa (job #2172130) | Cod sursa (job #1602141)
#include <iostream>
#include <fstream>
using namespace std;
int fr(int x)
{if(x==0) return 1;
return fr(x-1)*x;
}
int u(int x)
{int c=0;
while(x!=0)
{
if(x%10==0) c++;
else x=0;
x=x/10;
}
return c;
}
int main()
{int p, s, d, m, ok;
ifstream f("fact.in");
ofstream g("fact.out");
f>>p;
s=1; d=1000000;
ok=0;
while(s<=d && ok==0)
{
m=(s+d)/2;
if(u(fr(m))==p) if(u(fr(m-1))<p) ok=m;
else d=m-1;
else if(u(fr(m))<p) if(u(fr(m+1))==p) ok=m+1;
else s=m+1;
else d=m-1;
}
g<<ok;
g.close();
f.close();
}