프로그래머스 홀수 vs 짝수

CodeBee_·2023년 10월 10일

프로그래머스

목록 보기
14/31
post-thumbnail


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

홀수 vs 짝수

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

제한사항
5 ≤ num_list의 길이 ≤ 50
-9 ≤ num_list의 원소 ≤ 9


입출력 예

num_listresult
[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합니다.


🤍 나의 풀이

function solution1 (num_list) {
    let odd = 0;
    let even = 0;
    for(let i = 0; i < num_list.length; i++) { // num_list.length를 순회
        if((i + 1)  % 2 === 1) { // i + 1으로 홀 수 번째로 만들어준다.
            odd += num_list[i]; // 홀수인 경우에만 odd에 num_list[i]를 넣어준다.

        } else if((i + 1) % 2 === 0) {
            even += num_list[i];

        }
    } 
    return odd > even ? odd : even ; // 삼항연산자로 사용
    
}

🪐 다른 사람의 풀이

function solution(num_list) {
    let even = 0;
    let odd = 0

    num_list.map((v, idx) => {
        !(idx % 2) ? even += v : odd += v; 
      // map을 이용하여 idx가 짝수이면 even에 값을 아니면 odd에 값을 넣어준다.
    })

    return odd > even ? odd : even; 
}

🌱 오늘의 일기

반성하기 🤦🏻‍♀️
문제를 보았을 때 홀수들의 합과 짝수들의 합을 구하는 것으로 문제를 잘못 읽었다.
문제를 다시 파악하는데 시간을 잡아먹다... 문제를 항상 잘 읽어야한다.

profile
엉금엉금 공부 블로그

0개의 댓글