#include <string>
#include <vector>
using namespace std;
int solution(int num) {
int answer = 0;
for(answer; answer < 500; ++answer) {
if(num == 1) break;
num % 2 == 1 ? num = num*3 +1 : num /= 2;
}
return answer == 500 ? answer = -1 : answer;
}
3항 연산자를 이용해 해당 조건을 반복하도록하고 500번 이상 반복할 경우 -1을 리턴하도록 구현하였습니다.
문제: https://programmers.co.kr/learn/courses/30/lessons/12943
코딩테스트 연습 - 콜라츠 추측
1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2
programmers.co.kr
'Problem Solving > 프로그래머스' 카테고리의 다른 글
[프로그래머스/파이썬] 2023 KAKAO BLIND RECRUITMENT 개인정보 수집 유효기간 (0) | 2023.03.28 |
---|---|
[프로그래머스/파이썬] 2023 카카오 블라인드 리크루팅 표 병합 (0) | 2023.03.28 |
[프로그래머스/C++] 체육복 (0) | 2022.01.28 |
[프로그래머스/C++] H-Index (0) | 2022.01.28 |
[프로그래머스/C++] 가장 큰 수 (0) | 2022.01.28 |