#include <stdio.h> #include <iostream> #include <algorithm> #include <string> #include <vector> #include <math.h> using namespace std; long long N, M; long long twoN; long long twoM; long long twoNM; long long fiveN; long long fiveM; long long fiveNM; int main(void) { // freopen("B2004_input.txt", "r", stdin); cin >> N >> M; for(long long i = 2; i <= N; i *= 2) { twoN += N / i; } for(long long i = 2; i <= M; i *= 2) { twoM += M / i; } for(long long i = 2; i <= N-M; i *= 2) { twoNM += (N-M) / i; } for(long long i = 5; i <= N; i *= 5) { fiveN += N / i; } for(long long i = 5; i <= M; i *= 5) { fiveM += M / i; } for(long long i = 5; i <= N; i *= 5) { fiveNM += (N-M) / i; } cout << min(twoN-twoM-twoNM, fiveN-fiveM-fiveNM); return 0; } | cs |
'Baekjoon > Math' 카테고리의 다른 글
[백준 4948] 베르트랑 공준 (Eratos) (C/C++) (0) | 2020.03.25 |
---|---|
[백준 1676] 팩토리얼 0의 개수 (Math) (C/C++) (0) | 2020.01.25 |
[백준 11653] 소인수 분해 (Math) (C/C++) (0) | 2020.01.25 |
[백준 6658] 골드바흐의 추측 (Math) (C/C++) (★) (0) | 2020.01.25 |
[백준 11576] Base Conversion (Math) (C/C++) (0) | 2020.01.25 |