Skip to content

[정봉찬] 10-4. 동전교환(복습예정)#226

Open
devwqc wants to merge 1 commit intofraudgroup:mainfrom
devwqc:정봉찬/10-4.동전교환

Hidden character warning

The head ref may contain hidden characters: "\uc815\ubd09\ucc2c/10-4.\ub3d9\uc804\uad50\ud658"
Open

[정봉찬] 10-4. 동전교환(복습예정)#226
devwqc wants to merge 1 commit intofraudgroup:mainfrom
devwqc:정봉찬/10-4.동전교환

Conversation

@devwqc
Copy link
Contributor

@devwqc devwqc commented Sep 8, 2024

✔ 문제 제목: 동전교환

✔ 문제 유형: DP(냅색 알고리즘)

✔ 문제 풀이 날짜: 2024-09-09

💡 문제 분석 요약

  • 여러 단위의 동전들이 주어져 있을 때 거스름돈을 가장 적은 수로 주는 방법을 출력한다.
  • 동전은 무한정 쓸 수 있다.
  • 동전의 종류 개수 N(1<=N<=12), 거슬러 줄 금액 M(1<=M<=500)
  • 각 동전의 종류는 100원을 넘지 않는다.

💡 알고리즘 설계

  • 복습 예정

💡코드

function solution(m, coin) {
  let answer = 0;

  const dy = Array.from({ length: m + 1 }, () => m);

  dy[0] = 0;

  for (let i = 0; i < coin.length; i++) {
    for (let j = coin[i]; j <= m; j++) {
      dy[j] = Math.min(dy[j], dy[j - coin[i]] + 1);
    }
  }

  answer = dy[m];

  return answer;
}

let arr = [1, 2, 5];
console.log(solution(15, arr)); // 3

💡 시간복잡도

  • O(n^2)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant