728x90
https://www.acmicpc.net/problem/2293
메모리: 14,076 KB , 시간: 116 ms
사용 알고리즘: 다이나믹 프로그래밍
728x90
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args) throws Exception{
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[] coins = new int[n];
for (int i = 0; i < n; i++) {
coins[i] = Integer.parseInt(br.readLine());
}
int[] dp = new int[k + 1];
dp[0] = 1;
for (int i = 0; i < n; i++) {
for (int j = coins[i]; j <= k; j++) {
dp[j] += dp[j - coins[i]];
}
}
System.out.println(dp[k]);
}
}
728x90
'Problem Solving > BOJ' 카테고리의 다른 글
[백준, BOJ 1373] 2진수 8진수 (java) (0) | 2024.12.23 |
---|---|
[백준, BOJ 2559] 수열 (java) (0) | 2024.12.12 |
[백준, BOJ 1357] 뒤집힌 덧셈 (java) (0) | 2024.11.17 |
[백준, BOJ 2163] 초콜릿 자르기 (java) (0) | 2024.11.17 |
[백준, BOJ 1515] 수 이어 쓰기 (java) (0) | 2024.11.10 |