Cod sursa(job #2243920)
Utilizator | Data | 21 septembrie 2018 18:29:08 | |
---|---|---|---|
Problema | Factorial | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.43 kb |
#include<iostream>
using namespace std;
int main()
{
int n , c ;
long long st , dr , m , x ;
st=1 ;dr=1000000000 ;
cin>>n ;
while(st<=dr)
{
m=(st+dr)/2 ;
x=m; c=0;
while(m!=0)
{
c=c+m/5 ;
m=m/5;
}
if(c==n)
{
if(x-x%5==0) cout<<"1";
else cout<<x-x%5 ;
dr=-1 ;
}
else if(c>n) dr=(st+dr)/2-1 ;
else st=(st+dr)/2+1 ;
}
if(dr!=-1) cout<< "-1";
return 0;
}