인프런 커뮤니티 질문&답변

seal님의 프로필 이미지
seal

작성한 질문수

자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)

4. 졸업선물

안녕하세요. 새롭게 코드를 짜봤는데 혹시 반례가 있을까요?

작성

·

155

0

function solution(budget, priceArr) {
  let count = 0;

  priceArr.sort((arr1, arr2) => (arr1[0] + arr1[1]) - (arr2[0] + arr2[1]));
  
  for (const index in priceArr) {

    if (budget - priceArr[index][0] + priceArr[index][1] > 0) {
      budget -= priceArr[index][0] + priceArr[index][1];
      count++;
    } else if (budget - (priceArr[index][0] / 2) + priceArr[index][1] > 0) {
      count++;
      break;
    } else {
      break;
    }
  }

  return count;
}

답변 1

1

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

반례입니다. 답은 2입니다.

console.log(solution(596, [[6331], [4251], [8675], [5214], [10735], [5996], [9609], [9371], [8377], [5707], [7907], [6433], [9737], [8796], [4265], [3484], [8488], [8191], [9232], [4195]]));

seal님의 프로필 이미지
seal
질문자

답변 감사합니다!

seal님의 프로필 이미지
seal

작성한 질문수

질문하기