반응형
<코드>
#include<iostream>
using namespace std;
long long N, M, i;
int cnt2 = 0, cnt5 = 0;
int main()
{
cin >> N >> M;
for ( i = 2; i <= N; i *= 2) cnt2 += N / i;
for ( i = 2; i <= N-M; i *= 2) cnt2 -= (N - M) / i;
for ( i = 2; i <= M; i *= 2) cnt2 -= M / i;
for ( i = 5; i <= N; i *= 5) cnt5 += N / i;
for ( i = 5; i <= N - M; i *= 5) cnt5 -= (N - M) / i;
for ( i = 5; i <= M; i *= 5) cnt5 -= M / i;
cout << ((cnt2 < cnt5) ? cnt2 : cnt5);
}
이 문제 또한 백준 1676번 문제와 같이 2와 5의 개수에 따라 맨 뒤의 0의 개수가 정해 지므로 비슷한 맥락으로 풀이가 가능하다.
반응형
'🧩PS > 🥈Nomal' 카테고리의 다른 글
[C/C++] 백준 10773번 - 제로 (0) | 2020.12.06 |
---|---|
[C/C++] 백준 10828번 - 스택 (0) | 2020.12.06 |
[C/C++] 백준 1676번 - 팩토리얼 0의 개수 (0) | 2020.12.06 |
[C/C++] 백준 9375번 - 패션왕 신해빈 (3) | 2020.12.05 |
[C/C++] 백준 11051번 - 이항 계수 2 (DP풀이) (0) | 2020.12.03 |