1 분 소요

문제 설명

프로그래머스 181887번 홀수 vs 짝수

정수 리스트 num_list가 주어집니다. 가장 첫 번째 원소를 1번 원소라고 할 때, 홀수 번째 원소들의 합과 짝수 번째 원소들의 합 중 큰 값을 return 하도록 solution 함수를 완성해주세요. 두 값이 같을 경우 그 값을 return합니다.

제한 사항

  • 5 ≤ num_list의 길이 ≤ 50
  • -9 ≤ num_list의 원소 ≤ 9

입출력 예시

num_list result
[4, 2, 6, 1, 7, 6] 17
[-1, 2, 5, 6, 3] 8

입출력 예 설명 1

  • 홀수 번째 원소들의 합은 4 + 6 + 7 = 17, 짝수 번째 원소들의 합은 2 + 1 + 6 = 9 이므로 17을 return합니다.

입출력 예 설명 2

  • 홀수 번째 원소들의 합은 -1 + 5 + 3 = 7, 짝수 번째 원소들의 합은 2 + 6 = 8 이므로 8을 return합니다.

코드 구현

Python

def solution(num_list):
    even = 0
    odd = 0
    
    for idx, num in enumerate(num_list):
        if (idx + 1) % 2 == 0:
            even += num_list[idx]
        else:
            odd += num_list[idx]
    
    return even if even > odd else odd

Java

class Solution {
    public int solution(int[] num_list) {
        int even = 0, odd = 0;
        for (int i = 0; i < num_list.length; i += 1) {
            if ((i + 1) % 2 == 0) {
                even += num_list[i];
            } else {
                odd += num_list[i];
            }
        }

        return Math.max(even, odd);
    }
}