콜라츠 추측(프로그래머스)
3967 단어 JavaScript코딩테스트JavaScript
문제설명
- 주어진 수가 1이 될때까지 다음 작업을 반복
- 1) 입력된 수가 짝수라면 2로 나눈다
- 2) 입력된 수가 홀수라면 3을 곱하고 1을 더한다
- 3) 결과가 나온 수에 같은 작업을 1이 될 때까지 반복
- 단, 500번을 반복해도 1이 되지 않는다면 -1 반환
제한사항
- 입력된 수는 1이상 8000000미만인 정수
풀이
function solution(num) {
let count = 0;
const CollatzFunc = (num)=> {
if(count === 500)
return -1;
if(num === 1){
return count;
}
if(num % 2 === 0){
++count;
return CollatzFunc(num / 2);
}
else if(num %2 === 1){
++count;
return CollatzFunc(num * 3 + 1);
}
}
return CollatzFunc(num);
}
체크포인트
- 최대공약수, 최소공배수 문제에서 재귀함수를 활용했던 방법을 이용해 문제해결
Author And Source
이 문제에 관하여(콜라츠 추측(프로그래머스)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@vsnm25/콜라츠-추측
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
- 입력된 수는 1이상 8000000미만인 정수
풀이
function solution(num) {
let count = 0;
const CollatzFunc = (num)=> {
if(count === 500)
return -1;
if(num === 1){
return count;
}
if(num % 2 === 0){
++count;
return CollatzFunc(num / 2);
}
else if(num %2 === 1){
++count;
return CollatzFunc(num * 3 + 1);
}
}
return CollatzFunc(num);
}
체크포인트
- 최대공약수, 최소공배수 문제에서 재귀함수를 활용했던 방법을 이용해 문제해결
Author And Source
이 문제에 관하여(콜라츠 추측(프로그래머스)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@vsnm25/콜라츠-추측
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
function solution(num) {
let count = 0;
const CollatzFunc = (num)=> {
if(count === 500)
return -1;
if(num === 1){
return count;
}
if(num % 2 === 0){
++count;
return CollatzFunc(num / 2);
}
else if(num %2 === 1){
++count;
return CollatzFunc(num * 3 + 1);
}
}
return CollatzFunc(num);
}
- 최대공약수, 최소공배수 문제에서 재귀함수를 활용했던 방법을 이용해 문제해결
Author And Source
이 문제에 관하여(콜라츠 추측(프로그래머스)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@vsnm25/콜라츠-추측저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)