File tree Expand file tree Collapse file tree 1 file changed +38
-0
lines changed
Expand file tree Collapse file tree 1 file changed +38
-0
lines changed Original file line number Diff line number Diff line change 1+ ``` java
2+ import java.io.* ;
3+ import java.util.* ;
4+
5+ public class Main {
6+ public static void main (String [] args ) throws Exception {
7+ BufferedReader br = new BufferedReader (new InputStreamReader (System . in));
8+ StringTokenizer st = new StringTokenizer (br. readLine());
9+
10+ int n = Integer . parseInt(st. nextToken());
11+ int k = Integer . parseInt(st. nextToken());
12+
13+ int [] coins = new int [n];
14+ for (int i = 0 ; i < n; i++ ) {
15+ coins[i] = Integer . parseInt(br. readLine());
16+ }
17+
18+ int [] dp = new int [k + 1 ];
19+ Arrays . fill(dp, 10001 );
20+ dp[0 ] = 0 ;
21+
22+ for (int i = 0 ; i < n; i++ ) {
23+ int coin = coins[i];
24+ for (int j = coin; j <= k; j++ ) {
25+ if (dp[j - coin] != 10001 ) {
26+ dp[j] = Math . min(dp[j], dp[j - coin] + 1 );
27+ }
28+ }
29+ }
30+
31+ if (dp[k] == 10001 ) {
32+ System . out. println(- 1 );
33+ } else {
34+ System . out. println(dp[k]);
35+ }
36+ }
37+ }
38+ ```
You can’t perform that action at this time.
0 commit comments