[프로그래머스 레벨 1 JavaScript] '콜라츠 추측' 풀이

3274 단어 JavaScriptJavaScript

function solution(num) {
  var answer = 0;

  while (true) {
    if (num === 1) { // 입력값이 1로 바뀌었다면 반복문 탈출
      break;
    }
    if (num % 2 == 0) { // 짝수이면 2나누어주고 횟수 1증가
      num /= 2;
      answer += 1;
    } else { // 홀수이면 3곱하고 1더함, 횟수 1증가
      num *= 3;
      num += 1;
      answer += 1;
    }
  }
  if (answer >= 500) { // 횟수가 500번을 넘어가면 -1
    return -1;
  } else { // 아니면 횟수 출력
    return answer;
  }
}

좋은 웹페이지 즐겨찾기