1. 문제 설명
2. 풀이 과정
결과를 넣을 result를 0으로 초기화한다.
num_list의 인덱스를 for문으로 반복한다.
인덱스에 해당 문자num_list[i]가 1이 아니라면 반복하게 하는 while문을 만든다.
num_list[i]가 짝수이면 2로 나누고, 홀수이면 1을 빼고 2로 나눈다.
그리고 result에 각각의 상황에 1을 더한다.
num_list[i]가 1이 되면 while문을 나오고
for문을 나오면 result 값을 반환한다.
3. 코드
def solution(num_list):
result = 0
for i in range(len(num_list)):
while num_list[i] != 1:
if num_list[i] % 2 == 0:
num_list[i]/=2
result += 1
elif num_list[i] % 2 == 1:
num_list[i] = (num_list[i]-1)/2
result += 1
return result
'프로그래머스 > 기초' 카테고리의 다른 글
[프로그래머스] Lv.0 /원하는 문자열 찾기 (파이썬/Python) (0) | 2025.02.28 |
---|---|
[프로그래머스] Lv.0 /길이에 따른 연산 (파이썬/Python) (0) | 2025.02.28 |
[프로그래머스] Lv.0 /조건에 맞게 수열 변환하기 2 (파이썬/Python) (0) | 2025.02.28 |
[프로그래머스] Lv.0 /조건에 맞게 수열 변환하기 1 (파이썬/Python) (0) | 2025.02.28 |
[프로그래머스] Lv.0 /수열과 구간 쿼리 1 (파이썬/Python) (0) | 2025.02.27 |