코린이의 소소한 공부노트

[프로그래머스/Lv.0] 1로 만들기 본문

코딩테스트 풀이/JAVA

[프로그래머스/Lv.0] 1로 만들기

무지맘 2023. 5. 1. 15:37

1. Input, Output, Example

정수가 있을 때, 짝수라면 반으로 나누고, 홀수라면 1을 뺀 뒤 반으로 나눈다. 이 과정을 1이 될 때까지 반복한다.

- num_list의 모든 원소를 1로 만들기 위해서 필요한 나누기 연산의 횟수를 반환

 

2. Constraint

1) 3 num_list의 길이 15

2) 1 num_list의 원소 30

 

3. Code

1) 첫 코드(2023/05/01)

class Solution {
    public int solution(int[] num_list) {
        int answer = 0;
        for(int n : num_list){
            while(n!=1){
                if(n%2==0) n /= 2;
                else n = (n-1)/2;
                answer++;
            }
        }
        return answer;
    }
}