Algorithm/Programmers

[Programmers] Lv.0 / 배열의 길이에 따라 다른 연산하기 / Java

unknownomad 2024. 2. 27. 22:14

문제

 

풀이

import java.util.stream.IntStream;

class Solution {
    public int[] solution(int[] arr, int n) {
        return IntStream.range(0, arr.length)
            .map(i -> {
                if ((arr.length % 2 == 0 && i % 2 != 0) || (arr.length % 2 != 0 && i % 2 == 0)) {
                    return arr[i] + n;
                } else {
                    return arr[i];
                }
            }).toArray();
    }
}
class Solution {
    public int[] solution(int[] arr, int n) {
        for(int idx = arr.length % 2 == 0 ? 1 : 0; idx < arr.length; idx += 2) {
            arr[idx] += n;
        }
        return arr;
    }
}
class Solution {
    public int[] solution(int[] arr, int n) {
        for(int i = arr.length - 1; i >= 0; i -=2) {
            arr[i] += n;
        }
        return arr;
    }
}

 

출처

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