알고리즘/BOJ

백준 3474번 교수가 된 현우

꾸준함. 2019. 2. 2. 03:52

문제 링크입니다: https://www.acmicpc.net/problem/3474


간단한 수학 문제였습니다.

뒤에 0이 붙는 개수는 결국 소인수분해를 했을 때 2의 개수 혹은 5의 개수 중 작은 쪽이 정합니다.


#include <iostream>

#include <algorithm>

using namespace std;

 

int main(void)

{

        ios_base::sync_with_stdio(0);

        cin.tie(0);

        int T;

        cin >> T;

 

        for (int t = 0; t < T; t++)

        {

                 int N;

                 cin >> N;

 

                 int two = 0, five = 0;

                 for (int i = 2; i <= N; i *= 2)

                         two += N / i;

                 for (int i = 5; i <= N; i *= 5)

                         five += N / i;

 

                 cout << min(two, five) << "\n";

        }

        return 0;

}


개발환경:Visual Studio 2017


지적, 조언, 질문 환영입니다! 댓글 남겨주세요~

반응형

'알고리즘 > BOJ' 카테고리의 다른 글

백준 2022번 사다리  (0) 2019.02.04
백준 2792번 보석 상자  (0) 2019.02.04
백준 3111번 검열  (0) 2019.01.31
백준 1327번 소트 게임  (0) 2019.01.31
백준 1648번 격자판 채우기  (0) 2019.01.31