개발로그필름

[프로그래머스/js] 홀수 vs 짝수 본문

coding test/프로그래머스

[프로그래머스/js] 홀수 vs 짝수

yuullog 2024. 4. 20. 13:28
728x90
반응형
SMALL

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

내 코드
function solution(num_list) {
    let odd =0
    let even =0
    for(let i=0; i<num_list.length; i+=2){
        odd += num_list[i]
    }
    for(let i=1; i<num_list.length; i+=2){
        even += num_list[i]
    }
    return Math.max(odd, even)
}

 

공부하면서 보는 다른 사람 코드
function solution(num_list) {
    let even = 0;
    let odd = 0;

    // 배열 idx 상 
    // idx가 홀수면 짝수고
    // idx가 짝수면 홀수다
    num_list.map((v, idx) => {
        // idx가 짝수가 아니면 짝수. 짝수면 홀수.
        !(idx % 2) ? even += v : odd += v;
    })

    // odd가 크면 odd 반환, 아니면 짝수 반환
    return odd > even ? odd : even;
}

for문이 아닌 map으로 num_list 값(v)인덱스 값(idx)을 사용해서 푼 코드

항상 코딩테스트 문제 풀 때 for문이 되면 for문으로 푸는 경향이 있는데 map 사용하는 연습도 의식적으로 해야겠다

코테 풀면서 map 사용하는 사람들이 너무 많아~~ 배워야지

그리고 두 가지 경우의 수로 풀 때는 두 개의 for문이 아닌 삼항 연산자 ( ? : : )로 접근하는 것도 기억하기

반응형
LIST
Comments