정수 배열 arr이 매개변수로 주어집니다. arr의 길이가 2의 정수 거듭제곱이 되도록 arr 뒤에 정수 0을 추가하려고 합니다. arr에 최소한의 개수로 0을 추가한 배열을 return 하는 solution 함수를 작성해 주세요.
class Solution {
public int[] solution(int[] arr) {
int a=0 ;
int i=1;
while(a==0){
if(arr.length<=i){
a=1;
}else {
i=i*2;
}
}
int[] answer =new int[i];
for(int j=0;j<i;j++){
if(j<arr.length){
answer[j]=arr[j];
}else {
answer[j]=0;
}
}
return answer;
}
}
임의의 변수들을 두어서 .while 문안에서 일정한 2의 거듭 제곱보다 arr 의 길이가 작아지면
while 문에서 나와서 그때에 2의 거듭 제곱인 수만큼의 길이를 가진 answer을 만들어줘서
조건에 맞게 0 을 추가해주면된다.!
'자바 알고리즘 문제' 카테고리의 다른 글
| 간단한 논리 연산 (1) | 2023.12.20 |
|---|---|
| 한 번만 등장한 문자 (0) | 2023.12.20 |
| 진료 순서 정하기 (0) | 2023.12.16 |
| 특정 문자열로 끝나는 가장 긴 부분 문자열 찾기 (0) | 2023.12.01 |
| 배열 만들기 5 (0) | 2023.11.28 |