Pagini recente » Monitorul de evaluare | Istoria paginii utilizator/takeshitikano | Atasamentele paginii Profil crazy_otaku0902 | Istoria paginii utilizator/pastarnacul | Cod sursa (job #201380)
Cod sursa(job #201380)
#include <fstream>
using namespace std;
long zerouri(long n,int power)
{
if(n/power==0) return 0;
else return n/power+zerouri(n,power*5);
}
int main()
{
fstream f("fact.in",ios::in);
fstream f2("fact.out",ios::out);
long p;
long li,lf;
while(f>>p)
{
if(p==0) f2<<"1\n";
else{
li=2;
lf=2000000000;
int found=0;
while(!found&&li<=lf)
{
long mid=(li+lf)/2;
long z=zerouri(mid,5);
if(z==p)
{
found=1;
f2<<mid/5*5<<"\n";
}
else if(z<p) li=mid+1;
else lf=mid-1;
}
if(li>lf) f2<<"-1\n";
}}
//f2<<zerouri(,5);
f2.close();
f.close();
return 0;
}