Contents

조건에 맞게 수열 변환하기 3(with.Java)

   Dec 4, 2023     1 min read

“조건에 맞게 수열 변환하기 3” 문제에 대하여 알아본 글입니다.

코딩 테스트 문제를 풀며, 풀었던 문제에 대한 회고와 다른 풀이 방법을 알아보며, 알아가고자 합니다.

문제에 대해 먼저 알아보겠습니다.

문제

정수 배열 arr와 자연수 k가 주어집니다.

만약 k가 홀수라면 arr의 모든 원소에 k를 곱하고, k가 짝수라면 arr의 모든 원소에 k를 더합니다.

이러한 변환을 마친 후의 arr를 return 하는 solution 함수를 완성해 주세요.

입출력 예시

arrkresult
[1, 2, 3, 100, 99, 98]3[3, 6, 9, 300, 297, 294]
[1, 2, 3, 100, 99, 98]2[3, 4, 5, 102, 101, 100]

문제에 대한 나의 풀이

class Solution {
    public int[] solution(int[] arr, int k) {
        if(k % 2 == 0){
            for(int i = 0; i < arr.length; i++){
                arr[i] += k;
            }
        }else{
            for(int i = 0; i < arr.length; i++){
                arr[i] = arr[i] * k;
            }
        }
        return arr;
    }
}

풀이 설명

if(k % 2 == 0) : 만약 k가 짝수인 경우:

배열 arr의 각 요소에 k를 더합니다.

else : 그 외의 경우 (즉, k가 홀수인 경우):

배열 arr의 각 요소를 k와 곱합니다.

return arr;: 변경된 배열 arr을 반환합니다.

이 코드는 k의 홀짝 여부에 따라 배열의 요소를 다르게 변환합니다.

k가 짝수이면 각 요소에 k를 더하고, k가 홀수이면 각 요소를 k와 곱하여 반환합니다.