[프로그래머스 Lv.2] 2022 KAKAO TECH INTERNSHIP - 두 큐 합 같게 만들기

김민지·2024년 2월 11일
0

✨ 문제 ✨


✨ 정답 ✨

const sum = (arr) => {
   return arr.reduce((acc, v) => acc + v, 0);
}

function solution(queue1, queue2) {
    let sumQ1 = sum(queue1);
    let sumQ2 = sum(queue2);
    
    let pointer1 = 0;
    let pointer2 = queue1.length;
    
    const half = (sumQ1 + sumQ2) / 2;
    const queue = [...queue1, ...queue2];
    
    const end = queue1.length * 4;
    
    for (let count = 0; count < end; count++) {
        if (sumQ1 === half) {
            return count;
        }
        if (sumQ1 > half) {
            sumQ1 -= queue[pointer1++];
        } else {
            sumQ1 += queue[pointer2++];
        }
    }
    
    return -1;
}

🧵 참고한 정답지 🧵

💡💡 기억해야 할 점 💡💡

profile
이건 대체 어떻게 만든 거지?

0개의 댓글

관련 채용 정보