구현에 가까운 문제였다
무슨 수를 곱하던 10의 배수를 곱하면 결국 맨 뒤에 0이 모이게 된다
뒤의 0의 수는 10을 곱한 수와 같고 10은 2와 5를 곱한 수와 같다
2는 5보다 많으니 최종 수가 5로 몇 번 나눠지는 지를 구해 약수로 5가 몇개인지 구하고
그 수가 0의 개수와 같다고 판단하면 문제 해결인 문제다
https://www.acmicpc.net/problem/1676
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
int cnt=0;
cin >> n;
if (n == 0)
{
cout << 0;
return 0;
}
while (n > 0)
{
cnt += n/5;
n/=5;
}
cout << cnt << "\n";
return 0;
}
'개발 노트 > 백준, 프로그래머스 풀이' 카테고리의 다른 글
[백준 24416/c++]피보나치 수 1 (0) | 2022.07.18 |
---|---|
[백준 2748/c++]피보나치 수 2 (0) | 2022.07.17 |
[백준 10815/c++] 숫자 카드 (0) | 2022.07.15 |
[백준 11866/c++] 요세푸스 문제 0 (0) | 2022.07.14 |
[백준 11652/c++] 카드 (0) | 2022.07.13 |
댓글