극동대학교\AI컴퓨터공학과\JAVA/프로그래머스 코딩 기초 트레이닝

[프로그래머스, LV.0] 홀수 vs 짝수

sundori 2023. 9. 6. 22:43

목차

    #1 홀수 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

    #2 알고리즘 및 코드

    class Solution {
        public int solution(int[] num_list) {
            int even = 0, odd = 0; // even: 짝, odd: 홀
            for(int i = 0; i < num_list.length; i++){
                if((i + 1) % 2 == 1){ // 홀
                    odd += num_list[i];
                }else{ // 짝
                    even += num_list[i];
                }
            }
            return Math.max(even, odd);
             // return even > odd ? even : odd;
        }
    }
    ---------------------------------
    정확성  테스트
    테스트 1 〉	통과 (0.04ms, 76.1MB)
    테스트 2 〉	통과 (0.03ms, 74.4MB)
    테스트 3 〉	통과 (0.02ms, 80.2MB)
    테스트 4 〉	통과 (0.03ms, 74.6MB)
    테스트 5 〉	통과 (0.07ms, 79.1MB)
    테스트 6 〉	통과 (0.04ms, 77MB)
    테스트 7 〉	통과 (0.02ms, 68.5MB)
    테스트 8 〉	통과 (0.03ms, 72.7MB)
    테스트 9 〉	통과 (0.04ms, 73.2MB)
    테스트 10 〉	통과 (0.04ms, 72MB)
    테스트 11 〉	통과 (0.04ms, 67MB)
    테스트 12 〉	통과 (0.03ms, 81.7MB)
    테스트 13 〉	통과 (0.03ms, 75.4MB)
    테스트 14 〉	통과 (0.02ms, 72.2MB)
    테스트 15 〉	통과 (0.04ms, 77.9MB)
    테스트 16 〉	통과 (0.04ms, 75.5MB)
    테스트 17 〉	통과 (0.03ms, 67.8MB)
    테스트 18 〉	통과 (0.04ms, 73.4MB)
    테스트 19 〉	통과 (0.03ms, 82.7MB)
    테스트 20 〉	통과 (0.02ms, 77.6MB)
    테스트 21 〉	통과 (0.02ms, 75.4MB)
    테스트 22 〉	통과 (0.03ms, 75.7MB)
    테스트 23 〉	통과 (0.04ms, 76MB)
    테스트 24 〉	통과 (0.05ms, 78MB)
    테스트 25 〉	통과 (0.03ms, 73.9MB)
    • 홀수인 경우 odd에 짝수인 경우 even에 for문을 이용하여 num_list의 0번 인덱스부터 마지막 인덱스까지 반복하며 저장한 뒤
    • even과 odd에 저장되어 있는 숫자가 더 큰 것을 반환하면 된다.