본문 바로가기
코딩테스트/자바 Level 0

[Java] 홀수 vs 짝수

by onggury 2023. 7. 25.

문제

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

 

 

제한사항

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

 

class Solution {
    public int solution(int[] num_list) {
        int odd = 0, even = 0;
        
        boolean isOdd = true;
        for(int num : num_list) {
            if(isOdd) {
                odd += num;
            }
            else {
                even += num;
            }
            isOdd = !isOdd;
        }
        
        return (odd > even) ? odd : even;
    }
}

boolean 값을 스위치 하는 방식으로 해결했다.

각 if, else 문에 boolean 값을 바꿔주는 코드를 적을 수 있지만, 좀 더 깔끔하게 밖으로 빼내서 not 연산자를 활용하였다.

 

 

출처

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