프로그래머스/Lv. 0(코딩 기초 트레이닝)

[프로그래머스 코딩테스트] 홀수 vs 짝수(Java)

Sigfriede 2023. 4. 30. 08:45

  문제 설명

  정수 리스트 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
class Solution {
    public int solution(int[] num_list) {
        int answer = 0;
        int odd = 0;
        int even = 0;
        for (int i = 0; i < num_list.length; i++) {
            if (i % 2 == 0) {
                even += num_list[i];
            } else {
                odd += num_list[i];
            }
        }
        answer = Math.max(even, odd);
        return answer;
    }
}

  짝수와 홀수의 값을 담을 변수를 각각 생성합니다.

  for문이 num_list의 길이만큼 순회합니다. 만약 i를 2로 나눈 나머지가 0이라면, 즉 인덱스가 짝수라면 even 변수에 num_list의 i번째 값을 더하기 할당합니다. 만약 인덱스가 홀수일 경우 odd 변수에 num_list의 i번째 값을 더하기 할당합니다. 이렇게 구한 값을 Math 클래스의 max 메소드로 큰 값을 찾아 answer에 할당합니다.