티스토리 뷰
728x90
[DP] changeCoin?
예제: https://www.acmicpc.net/problem/2293
// 동전교환
// 동전 갯수, 목표금액
// 동전 종류들
// [만들고 싶은 금액 - 현재 동전의 값] => 가지수
// +
// [만들고 싶은 금액] => 가지수
#include <iostream>
#include <string.h>
using namespace std;
#define COIN_COUNT 100
#define SIZE 10001
int main() {
int coin[COIN_COUNT];
int coinCount, target;
cin >> coinCount >> target;
for(int i=0; i<coinCount; i++) {
cin >> coin[i];
}
int dp[SIZE];
memset(dp, 0, sizeof(dp));
dp[0]=1;
for(int i=0; i<coinCount; i++) {
for(int j=coin[i]; j<=target; j++) {
dp[j] += dp[j - coin[i]];
}
}
cout << dp[target] << endl;
return 0;
}
예제: https://www.acmicpc.net/problem/2294
// 동전교환
// 동전 갯수, 목표금액
// 동전 종류들
// dp 항목 중요 동전의 갯수 이므로 0로 초기화하고
// 점화식에 기존 동전 + 1로한다.
// 0x7fffffff == INF
// memset 은 0x7f 만 가능하므로 주의하자
#include <iostream>
#include <string.h>
using namespace std;
#define COIN_COUNT 100
#define SIZE 10001
#define INF 0x7fffffff
int main() {
int coin[COIN_COUNT];
int coinCount, target;
cin >> coinCount >> target;
for(int i=0; i<coinCount; i++) {
cin >> coin[i];
}
int dp[SIZE];
for(int i=0; i<=target; i++) {
dp[i] = INF;
}
dp[0] = 0;
for(int i=0; i<coinCount; i++) {
for(int j=coin[i]; j<=target; j++) {
if(dp[j - coin[i]] != INF && dp[j] > dp[j - coin[i]] + 1) {
dp[j] = dp[j - coin[i]] + 1;
}
}
}
int result = (dp[target] == INF) ? -1 : dp[target];
cout << result << endl;
return 0;
}
728x90
'공부' 카테고리의 다른 글
[Ubuntu] Linux terminal process without kill after logout (0) | 2018.09.12 |
---|---|
[Sort] QuickSort (0) | 2018.09.11 |
[Greedy] jewelryThief - priority_queue(heap) (0) | 2018.09.08 |
[SQL] groupBy & having? (0) | 2018.09.08 |
[SQL] join? (0) | 2018.09.08 |
댓글
250x250
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 테슬라 크레딧 사용
- 모델 Y 레퍼럴
- 테슬라
- 모델y
- 레퍼럴
- 책그림
- wlw
- 테슬라 레퍼럴 적용 확인
- 메디파크 내과 전문의 의학박사 김영수
- 테슬라 레퍼럴
- 테슬라 레퍼럴 코드 확인
- 개리마커스
- COUNT
- 테슬라 추천
- 유투브
- 할인
- 김달
- 클루지
- Kluge
- 팔로워 수 세기
- follower
- 테슬라 리퍼럴 코드 생성
- 테슬라 리퍼럴 코드 혜택
- 인스타그램
- 어떻게 능력을 보여줄 것인가?
- 테슬라 리퍼럴 코드
- 연애학개론
- Bot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함