✏️기록하는 즐거움
article thumbnail

 

코딩테스트 연습 - 콜라츠 추측

1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2

programmers.co.kr

 

|  제출

function solution(num) {
    let count = 0;
    
    if(num === 1){
        return 0;
    }
    
    while(num !== 1){
        if(num % 2 === 0){
            num = num / 2;
        } else{
            num = num * 3 + 1;
        }
        count ++;
    }
    
    return count > 500 ? -1 : count;
}

 

|  풀이과정

입력된 숫자가 1이면 0을 반환하고, 1이 아니라면 반복적인 작업을 진행하여 num이 1이 될 때 까지 count 값을 증가시킨다.

여기서 count가 500보다 크다면 -1을, 그렇지 않다면 count를 반환한다.

|  개념

while

  • 실행 전에 조건문을 먼저 확인하고, 조건이 참이면 문장을 수행하는 반복문

while문을 사용한 문제

 

[백준] 10718: We love kriii (javascript)

Link 10718번: We love kriii ACM-ICPC 인터넷 예선, Regional, 그리고 World Finals까지 이미 2회씩 진출해버린 kriii는 미련을 버리지 못하고 왠지 모르게 올해에도 파주 World Finals 준비 캠프에 참여했다..

codingmyoni.tistory.com

 

profile

✏️기록하는 즐거움

@nor_coding

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!