코딩테스트연습/[프로그래머스] Java

[프로그래머스] Java 코딩테스트 연습 - 조건에 맞게 수열 변환하기 3

_꼬마돌 2023. 6. 27. 19:59
반응형

[프로그래머스] Java 코딩테스트 연습 - 조건에 맞게 수열 변환하기 3

문제 출처

https://school.programmers.co.kr/learn/courses/30/lessons/181835

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제

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

 

풀이

if문에 k를 2로 나눴을 때 나머지가 0인지 여부로 홀짝을 구분하고 for문에서 문제에 맞게 홀수라면 arr의 각 원소에 k를 곱한 값을 answer에 할당하고, 짝수라면 k를 더한 값을 할당하도록 했다. 

 

소스코드

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

 

반응형