카테고리 없음
[프로그래머스] 배열의 길이를 2의 거듭제곱으로 만들기 (Java, Python)
garamdev
2025. 6. 16. 21:21
문제
https://school.programmers.co.kr/learn/courses/30/lessons/181857
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
코드(Java)
import java.util.Arrays;
class Solution {
public int[] solution(int[] arr) {
int n = arr.length;
int nextPower = Integer.highestOneBit(n) << (Integer.bitCount(n) > 1 ? 1: 0);
return Arrays.copyOf(arr, nextPower);
}
}
코드(Python)
def solution(arr):
n = len(arr)
if (n & (n - 1)) == 0:
next_power = n
else:
next_power = 1 << n.bit_length()
return arr + [0] * (next_power - n)
728x90