게으른카르

백준 3474 교수가 된 현우.

백준 3474번 "교수가 된 현우" 문제의 자세한 내용은 글 하단의 문제 링크를 참고하세요.

3474번 문제에 주어지는 입력 및 예시

입력: 

6
3
60
100
1024
23456
8735373

출력:

0
14
24
253
5861
2183837

팩토리얼에서 0의 개수는 5의 개수와 2의 개수 중 최소값이 됩니다.

그런데  2는 충분히 많으니까 5의 개수만 세어주면 됩니다.

코드

백준 3474번 "교수가 된 현우" 문제의 코드입니다.

#include<bits/stdc++.h>
using namespace std;
int main(){
    ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    int N, num;
    cin >> N;
    while(N--){
        cin >> num;
        int ret = 0; 
        for(int i=5; i<=num; i*=5)
            ret += num / i; 
        cout << ret << "\n";
    }
    return 0;
}

실행

위의 코드를 예제의 입력을 넣어 실행했을 때의 결과입니다.

반응형

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band