====== 동전 1 ====== ===== 풀이 ===== * [[ps:배낭 문제#Coin Change Problem]]의 표준적인 문제. 풀이는 그쪽 참고. DP를 이용해서 O(nk)에 풀수 있다. ===== 코드 ===== """Solution code for "BOJ 2293. 동전 1". - Problem link: https://www.acmicpc.net/problem/2293 - Solution link: http://www.teferi.net/ps/problems/boj/2293 Tags: [knapsack] """ def main(): n, k = [int(x) for x in input().split()] coins = [int(input()) for _ in range(n)] dp = [0] * (k + 1) dp[0] = 1 for coin in coins: for i, dp_prev in zip(range(coin, k + 1), dp): dp[i] += dp_prev print(dp[k]) if __name__ == '__main__': main() {{tag>BOJ ps:problems:boj:골드_5}}