코딩테스트/프로그래머스

[프로그래머스] 조건에 맞게 수열 변환하기 3

블로그 주인장 2023. 8. 8.

 

 

목차

     


    📢 문제 출처


    ⏰ 문제 설명

    • 정수 배열 arr와 자연수 k가 주어집니다. 
    • 만약 k가 홀수라면 arr의 모든 원소에 k를 곱하고, k가 짝수라면 arr의 모든 원소에 k를 더합니다. 
    • 이러한 변환을 마친 후의 arr를 return 하는 solution 함수를 완성해 주세요.

    ⏰ 입출력 예시

    • 입출력 예 #1
    • (1). 주어진 k인 3은 홀수이므로, 전체 배열에 3을 곱합니다. 따라서 [3, 6, 9, 300, 297, 294]을 return 합니다.
    • 입출력 예 #2
    • (1). 주어진 k인 2는 짝수이므로, 전체 배열에 2를 더합니다. 따라서 [3, 4, 5, 102, 101, 100]을 return 합니다.

    ⏰ 풀이

    class Solution {
        public int[] solution(int[] arr, int k) {
            for(int i = 0; i< arr.length; i++){
                if(k % 2 == 1){
                    arr[i] *=k;
                }
                else{
                    arr[i] +=k;
                }               
            }
            
            return arr;
        }
    }
    • 배열 안에 있는 값을 변경시켜야한다. 변경하기 위해 배열을 전부 해당 조건에 맞춰야하기 때문에 반복문 사용한다.
    • for문을 사용하고, 짝수와 홀수에 맞는 조건을 삽입한다.
    • 조건안에 k = 짝수이면 +2, k = 홀수이면 x2 를 진행하여 기존 arr 배열에 값을 대입해준다.

     

    반응형

    댓글