in.add()
[2293] 동전 1 본문
문제 링크 : https://www.acmicpc.net/problem/2293
2293번: 동전 1
첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다.
www.acmicpc.net
문제 해결 방법
DP로 구현했다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int k = sc.nextInt();
int[] coin = new int[n];
for (int i = 0; i < n; i++) {
coin[i] = sc.nextInt();
}
int[] dp = new int[k + 1];
dp[0] = 1;
for (int i = 0; i < n; i++) {
for (int j = coin[i]; j <= k; j++) {
dp[j] = dp[j] + dp[j - coin[i]];
}
}
System.out.println(dp[k]);
}
}
'Algorithm > BOJ' 카테고리의 다른 글
[14500] 테트로미노 (0) | 2021.10.21 |
---|---|
[14503] 로봇 청소기 (0) | 2021.10.20 |
[14442] 벽 부수고 이동하기 2 (0) | 2021.10.17 |
[20055] 컨베이어 벨트 위의 로봇 (0) | 2021.10.15 |
[1991] 트리 순회 (0) | 2021.10.14 |
Comments