프로그래머스 - 배열의 길이를 2의 거듭제곱으로 만들기

박철현·2023년 7월 29일

프로그래머스

목록 보기
40/80

프로그래머스 - 배열의 길이를 2의 거듭제곱으로 만들기

import java.util.Arrays;
class Solution {
	public int[] solution(int[] arr) {
		int checkLength = arr.length;
		int max = 1;
		
		while (checkLength > max) {
			max = max*2;
		}
		
		return Arrays.copyOf(arr, max);
	}
}
  • 2의 거듭제곱으로 나올 수 있는 최적값을 찾는다.
    • 조건에 등호가 있을경우, 기존의 length가 2의 거듭제곱 값이여도 실행되어 조건을 만족하지 못함
      ex) length : 4 => 4일때도 실행 => 불필요한 0이 4개가 더붙어 실패
  • Arrays.copyOf로 배열을 복사한다 -> 넘치는 인덱스는 0으로 자동 초기화
profile
비슷한 어려움을 겪는 누군가에게 도움이 되길

0개의 댓글