Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- 네트워크플로우
- 취득후기
- 다익스트라
- 세그먼트트리
- 완전탐색
- 게더타운시작
- 우선순위큐
- dp
- 다이나믹프로그래밍
- DFS
- spring
- QUICKSTARTGUIDE
- 엘라스틱서치
- 자바PS
- java
- 시뮬레이션
- YBMCOS
- 알고리즘
- BFS
- 백준코딩테스트
- 01BFS
- 재귀함수
- PS
- 이젠 골드구현도 어렵네..
- deque
- COSPROJAVA1급
- COSPRO
- 구현
- GatherTown
- 백준
Archives
- Today
- Total
공부공간
BOJ - 2293) 동전 1 본문
특정 금액을 다른 가치를 가진 동전으로 나타낼수 있는 최대 경우의 수를 구하는 문제이다. 기본적인 유형의 동적 프로그래밍 문제이다. 2중 for 문을 사용하여, 주어진 동전의 가치만을 사용할 때의 경우만 생각하며 일정 금액보다 사용할수 있는 동전의 가치가 낮은 경우, 동전의 가치를 뺀 경우의 수를 더하여 갱신함으로써 문제를 해결한다.
ex) 4원을 위의 예제 입력으로 나타내는 경우, 예제의 1원만 사용할 경우를 생각하여 배열에 값을 갱신한다.
i = 1) d[1]~d[4] = 1
i = 2) d[1] = 1, d[2] 의 경우 입력된 동전의 가치보다 크거나 같기 때문에, 기존의 d[2] 배열에 가지수를 추가하여 준다.
d[4] = d[4](1로만 나타낸 경우의 수) + d[2](1과 2, 2로만 나타낸 경우의수) = 3 으로 값이 갱신된다.
'알고리즘 > Dynamic Programming' 카테고리의 다른 글
BOJ - 11048 ) 이동하기 (0) | 2020.01.30 |
---|---|
BOJ - 2294 ) 동전 2 (0) | 2020.01.30 |
BOJ - 1699) 제곱수의 합 (0) | 2020.01.29 |
BOJ - 11052) 카드 구매하기 (0) | 2020.01.29 |
BOJ - 10164 ) 격자상의 경로 (0) | 2020.01.27 |
Comments