BOJ - 1676 - 팩토리얼 0의 개수

ggh·2022년 5월 28일
0

백준

목록 보기
39/112

BOJ - 1676 - 팩토리얼 0의 개수

문제


1676번: 팩토리얼 0의 개수

문제 개념


문제

N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.

  • 10!이 12314400 이라 할 때 2가 출력 되어야 한다.

입력

첫째 줄에 N이 주어진다. (0 ≤ N ≤ 500)

출력

첫째 줄에 구한 0의 개수를 출력한다.

구현


#include <iostream>
#include <string> 
using namespace std;

int main()
{
    int num;
    cin >> num;
    int tmp1, tmp2, tmp3;
    tmp1 = num / 5;
    tmp2 = num / 25;
    tmp3 = num / 125;
    cout << tmp1 + tmp2 + tmp3;
    return 0;
}

SOL


  • 뒤에서 0이 나올 경우는 10의 제곱일 경우 뿐이다.
    • 따라서 5 그리고 2로 나눠지는 경우를 구한다.
    • N이 500까지기에 5, 25, 125의 개수를 구한 후 더해 문제를 해결한다.

Reference & 다른 PS 모음집


GitHub - ggh-png/PS: 2021.01.11 start

profile
See you in a minute. : )

0개의 댓글