Cod sursa(job #2092336)
| Utilizator | Data | 21 decembrie 2017 15:50:55 | |
|---|---|---|---|
| Problema | Factorial | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.47 kb |
#include <iostream>
#include <algorithm>
#include <cmath>
#include <fstream>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
int zero(int n){
int nr=0;
while(n>=5)
nr+=(n/=5);
return nr;
}
int main(){
long long n,r=0,pas;
in>>n;
pas=1<<30;
while(pas){
if(zero(r+pas)<n)
r+=pas;
pas/=2;
}
if(zero(r+1)==n)
out<<r+1;
else
out<<-1;
return 0;
}