[프로그래머스] 콜라츠 추측

ElenaPark·2021년 3월 7일
0

알고리즘

목록 보기
24/37
post-thumbnail

콜라츠 추측

콜라츠 추측
주어진 수가 1이 될 때까지 다음 작업을 반복하면 모든 수를 1로 만들 수 있다는 이론.
1-1)입력된 수가 짝수면 2로 나누기
1-2)입력된 수가 홀수면 3을 곱하고 1을 더하기
2)결과 값에 같은 작업을 1이 될 때까지 반복하기

풀이


function solution13(n) {
  let count = 0;
  while (n !== 1) {
    if (n % 2 === 0) {
      n = n / 2;
      count++;
    } else {
      n = n * 3 + 1;
      count++;
    }
  }

  if (count > 500) {
    count = -1;
  }
  return count;
}

console.log(solution13(6)); // 8
console.log(solution13(16)); // 4
console.log(solution13(626331)); // -1
profile
Front-end 개발자입니다.

0개의 댓글