From 3077b436a4194bf4e676addfe46023cbb11e1efd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B0=95=EC=8B=A0=EC=A7=80?= <101992179+ksinji@users.noreply.github.com> Date: Wed, 10 Dec 2025 20:19:27 +0900 Subject: [PATCH] =?UTF-8?q?[20251210]=20BOJ=20/=20G5=20/=20Coins=20/=20?= =?UTF-8?q?=EA=B0=95=EC=8B=A0=EC=A7=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ksinji/202512/10 BOJ Coins.md | 40 +++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 ksinji/202512/10 BOJ Coins.md diff --git a/ksinji/202512/10 BOJ Coins.md b/ksinji/202512/10 BOJ Coins.md new file mode 100644 index 00000000..cbc042de --- /dev/null +++ b/ksinji/202512/10 BOJ Coins.md @@ -0,0 +1,40 @@ +```java +import java.io.*; +import java.util.*; + +public class Main { + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringBuilder sb = new StringBuilder(); + + int t = Integer.parseInt(br.readLine()); + + while (t-- > 0) { + int n = Integer.parseInt(br.readLine()); + int[] coin = new int[n]; + + StringTokenizer st = new StringTokenizer(br.readLine()); + for (int i = 0; i < n; i++) { + coin[i] = Integer.parseInt(st.nextToken()); + } + + int m = Integer.parseInt(br.readLine()); + + int[] dp = new int[m + 1]; + dp[0] = 1; + + for (int i = 0; i < n; i++) { + int c = coin[i]; + for (int money = c; money <= m; money++) { + dp[money] += dp[money - c]; + } + } + + sb.append(dp[m]).append('\n'); + } + + System.out.print(sb); + } +} + +```