Cod sursa(job #3175073)
| Utilizator | Data | 25 noiembrie 2023 12:25:04 | |
|---|---|---|---|
| Problema | Factorial | Scor | 90 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <iostream>
#include <fstream>
#define int long long
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int cnt(int x){
int ans = 0;
for(int p = 5; p <= x; p *= 5){
ans += (x / p);
}
return ans;
}
signed main(){
int p;
fin >> p;
int st = 0, dr = 1000000000000;
while(dr - st > 1){
int mid = (st + dr) / 2;
if(cnt(mid) >= p){
dr = mid;
}else{
st = mid;
}
}
fout << dr << '\n';
return 0;
}
