이코테 - 못생긴 수 with JAVA
해결 못생긴 수는 2,3,5만을 약수로 갖는 수들을 의미한다. 따라서, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15 순서대로 이루어진다. 중요한 것은 못생긴수는 못생긴수에 2, 3, 5를 곱한 결과로 이루어진다는 것이다. 문제에서 1은 못생긴 수라고 주어진다. 1 1x2, 1x3, 1x5 = [1, 2, 3, 5] 2 2x2, 2x3, 2x5 = [1, 2, 3, 5, 4, 6, 10] = [1, 2, 3, 4, 5, 6, 10] 3 3x2, 3x3, 3x5 = [1, 2, 3, 4, 5, 6, 9, 10, 15] 코드 import java.util.*; public class Q5 { public static void main(String[] args){ Scanner sc = new..
이코테 - 효율적인 화폐 구성 with JAVA
해결 예를 들어, 동전이 2원 3원이 존재하고 15원을 만든다고 가정하자. 2원만 사용하는 경우 만약, 0원이 존재한다면 0원+2원으로 2원을 만들 수 있다. 만약, 1원이 존재한다면 1원+2원으로 3원을 만들 수 있다. 만약, 2원이 존재한다면 2원+2원으로 4원을 만들 수 있다. 만약, 3원이 존재한다면 3원+2원으로 5원을 만들 수 있다. 이를 식으로 정리하면, dp[i] = Math.min(dp[i], dp[i-2]+1) 이 된다. 2원 = Math.min(2원, (2-2)원 +1) 3원 = Math.min(3원, (3-2)원 +1) 4원 = Math.min(4원, (4-2)원 +1) 코드 package JAVA.TCT.DP; import java.util.*; // 효율적인 화폐 구성 publi..