From 3712b23eeb1168ad5b50ce6dbb499cf6d2d17ef9 Mon Sep 17 00:00:00 2001 From: Hojun Song <99067128+hojunking96@users.noreply.github.com> Date: Wed, 17 May 2023 17:06:41 +0900 Subject: [PATCH] p2293 solved --- .../Main.java" | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 "10\354\243\274\354\260\250/p2293/\354\206\241\355\230\270\354\244\200/Main.java" diff --git "a/10\354\243\274\354\260\250/p2293/\354\206\241\355\230\270\354\244\200/Main.java" "b/10\354\243\274\354\260\250/p2293/\354\206\241\355\230\270\354\244\200/Main.java" new file mode 100644 index 0000000..7f68b24 --- /dev/null +++ "b/10\354\243\274\354\260\250/p2293/\354\206\241\355\230\270\354\244\200/Main.java" @@ -0,0 +1,30 @@ +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.*; + +public class Main { + + public static void main(String[] args) throws IOException { + Set set = new HashSet<>(); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine()); + int n = Integer.parseInt(st.nextToken()); + int k = Integer.parseInt(st.nextToken()); + int[] dp = new int[k + 1]; + for (int i = 0; i < n; i++) { + int value = Integer.parseInt(br.readLine()); + if (value <= k) { + set.add(value); + } + } + + for (int e : set) { + dp[e]++; + for (int i = e; i <= k; i++) { + dp[i] += dp[i - e]; + } + } + System.out.println(dp[k]); + } +}