-
[22115] 창영이와 커피BOJ 2022. 2. 13. 02:18
https://www.acmicpc.net/problem/22115
22115번: 창영이와 커피
커피는 종류별로 하나씩 준비되어 있기 때문에, 동일한 커피를 여러 개 마실 수 없음에 유의하라.
www.acmicpc.net
<문제>
가격이 전부 동일하다고 생각하면 되므로, 사실상 "[12865]평범한 배낭" 과 비슷하게 풀 수 있다.
가격이 1이라고 생각하고, 가격을 최소화하는 느낌으로 접근하자.
<소스코드>
#include <bits/stdc++.h>using namespace std;constexpr int INF = INT_MAX >> 1;int n, k, dp[100001], w[101];int main(void) {ios_base::sync_with_stdio(0);cin.tie(0);cin >> n >> k;int i, j;fill(&dp[1], &dp[100001], INF);for (i = 0; i < n; i++) cin >> w[i];for (i = 0; i < n; i++)for (j = k; j >= w[i]; j--) dp[j] = min(dp[j - w[i]] + 1, dp[j]);if (dp[k] != INF)cout << dp[k];elsecout << -1;return 0;}'BOJ' 카테고리의 다른 글
[13164] 행복 유치원 (0) 2022.02.17 [1120] 문자열 (0) 2022.02.14 [16493] 최대 페이지 수 (0) 2022.02.12 [12034] 김인천씨의 식료품가게 (Large) (0) 2022.02.12 [2012] 등수 매기기 (0) 2022.02.12