diff --git "a/\354\235\264\354\275\224\355\205\214/08 DP/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\234\240\354\247\204.py" "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\234\240\354\247\204.py" similarity index 100% rename from "\354\235\264\354\275\224\355\205\214/08 DP/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\234\240\354\247\204.py" rename to "\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\234\240\354\247\204.py" diff --git "a/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\244\200\355\230\270.java" "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\244\200\355\230\270.java" new file mode 100644 index 0000000..d5c34a5 --- /dev/null +++ "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/1\353\241\234_\353\247\214\353\223\244\352\270\260/\354\244\200\355\230\270.java" @@ -0,0 +1,26 @@ +import java.util.*; + +public class 준호 { + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + int N = scanner.nextInt(); + + int[] d = new int[N + 1]; + for (int i = 0; i < N + 1; i++) { + d[i] = 0; + } + for (int i = 2; i < N + 1; i++) { + d[i] = d[i - 1] + 1; + if (i % 2 == 0) { + d[i] = Math.min(d[i], d[i / 2] + 1); + } + if (i % 3 == 0) { + d[i] = Math.min(d[i], d[i / 3] + 1); + } + if (i % 5 == 0) { + d[i] = Math.min(d[i], d[i / 5] + 1); + } + } + System.out.println(d[N]); + } +} diff --git "a/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\352\260\234\353\257\270_\354\240\204\354\202\254/\354\234\240\354\247\204.py" "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\352\260\234\353\257\270_\354\240\204\354\202\254/\354\234\240\354\247\204.py" new file mode 100644 index 0000000..39df126 --- /dev/null +++ "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\352\260\234\353\257\270_\354\240\204\354\202\254/\354\234\240\354\247\204.py" @@ -0,0 +1,20 @@ +n = 4#int(input()) +k = [1, 3, 1, 5]#list(map(int, input().split())) +d = [0] * 100 # i번째 창고를 털 때, 가장 많이 털수있는 양을 저장 + +# 최솟값 지정 +d[0] = k[0] +# 어느 방부터 털기 시작하는게 많이털 수 있을까 +d[1] = max(k[0], k[1]) + +# 이후에는 점화식으로 for문 +# di = max(di-1, di-2 + ki) +# 바로 전 방을 터는게 많을까, 그전전방과 현재 방을 같이 터는게 많을까 +for i in range(2, n): + d[i] = max(d[i - 1], d[i - 2] + k[i]) + +print(d[n - 1]) + +# 몰라서 봤음 +# d[i] = max(k[i - 1], k[i - 1] + k[i]) +# 접근만 좋았음(식은 결국 틀림) \ No newline at end of file diff --git "a/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\352\260\234\353\257\270_\354\240\204\354\202\254/\354\244\200\355\230\270.java" "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\352\260\234\353\257\270_\354\240\204\354\202\254/\354\244\200\355\230\270.java" new file mode 100644 index 0000000..01544f5 --- /dev/null +++ "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\352\260\234\353\257\270_\354\240\204\354\202\254/\354\244\200\355\230\270.java" @@ -0,0 +1,24 @@ +import java.util.Scanner; + +public class Test { + public static void main(String[] args) { +// 개미전사 + + Scanner scanner = new Scanner(System.in); + int N = scanner.nextInt(); + int[] K = new int[N]; + int[] total = new int[N]; + for (int i = 0; i < N; i++) { + K[i] = scanner.nextInt(); + total[i] = 0; + } + total[0] = K[0]; + total[1] = Math.max(K[0], K[1]); + + for (int i = 2; i < N; i++) { + int a = total[i - 2] + K[i]; + total[i] = Math.max(a, total[i - 1]); + } + System.out.println(total[N-1]); + } +} diff --git "a/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\353\260\224\353\213\245_\352\263\265\354\202\254/\354\244\200\355\230\270.java" "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\353\260\224\353\213\245_\352\263\265\354\202\254/\354\244\200\355\230\270.java" new file mode 100644 index 0000000..cd2e1dd --- /dev/null +++ "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\353\260\224\353\213\245_\352\263\265\354\202\254/\354\244\200\355\230\270.java" @@ -0,0 +1,18 @@ +import java.util.Scanner; + +public class 준호 { + public static void main(String[] args) { + +// 바닥공사 + Scanner scanner = new Scanner(System.in); + int N = scanner.nextInt(); + + int[] count = new int[N]; + count[0] = 1; + count[1] = 3; + for (int i = 2; i < N; i++) { + count[i] = count[i - 1] + count[i - 2] * 2; + } + System.out.println(count[N - 1]); + } +} diff --git "a/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\355\232\250\354\234\250\354\240\201\354\235\270_\355\231\224\355\216\230_\352\265\254\354\204\261/\354\244\200\355\230\270.java" "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\355\232\250\354\234\250\354\240\201\354\235\270_\355\231\224\355\216\230_\352\265\254\354\204\261/\354\244\200\355\230\270.java" new file mode 100644 index 0000000..5161c45 --- /dev/null +++ "b/\354\235\264\354\275\224\355\205\214/08 \353\213\244\354\235\264\353\202\230\353\257\271 \355\224\204\353\241\234\352\267\270\353\236\230\353\260\215/\355\232\250\354\234\250\354\240\201\354\235\270_\355\231\224\355\216\230_\352\265\254\354\204\261/\354\244\200\355\230\270.java" @@ -0,0 +1,32 @@ +import java.util.Arrays; +import java.util.Scanner; + +public class 준호 { + public static void main(String[] args) { +// 효율적인 화폐 구성 + Scanner scanner = new Scanner(System.in); + int N = scanner.nextInt(); + int M = scanner.nextInt(); + int[] number = new int[N]; + for (int i = 0; i < N; i++) { + number[i] = scanner.nextInt(); + } + + int[] total = new int[M+1]; + Arrays.fill(total, 10001); + + total[0] = 0; + for (int i = 0; i < N; i++) { + for (int j = number[i]; j <= M; j++) { + if (total[j - number[i]] != 10001) { + total[j] = Math.min(total[j], total[j - number[i]] + 1); + } + } + } + if (total[M] != 10001) { + System.out.println(total[M]); + } else { + System.out.println(-1); + } + } +}