알고리즘/BOJ

백준 3943번 헤일스톤 수열

꾸준함. 2018. 5. 13. 13:19

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


왜 DP 문제로 분류된지 모르겠는 문제였습니다.

정말 간단하게 재귀함수를 호출해도 AC를 받을 수 있기 때문입니다.


#include <iostream>

using namespace std;

 

int N, maxNum;

 

int maxHailStone(int N)

{

        if (maxNum <= N)

                 maxNum = N;

 

        if (N == 1) //기저사례: 1이 끝

                 return maxNum;

        else

                 return N % 2 ? maxHailStone(3 * N + 1) : maxHailStone(N / 2);

}

 

int main(void)

{

        int test_case;

        cin >> test_case;

 

        for (int i = 0; i < test_case; i++)

        {

                 scanf("%d", &N);

                 maxNum = N;

                 printf("%d\n", maxHailStone(N));

        }

        return 0;

}


개발환경:Visual Studio 2017


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

반응형

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

백준 2869번 달팽이는 올라가고 싶다  (0) 2018.05.15
백준 1562번 계단 수  (0) 2018.05.14
백준 4883번 삼각그래프  (0) 2018.05.13
백준 2666번 벽장문의 이동  (0) 2018.05.13
백준 2616번 소형기관차  (1) 2018.05.13