From 659504f470ee3e94db17e359f3dafb899c783219 Mon Sep 17 00:00:00 2001 From: YejiLee <32984517+yjll1019@users.noreply.github.com> Date: Fri, 10 Aug 2018 05:41:08 +0900 Subject: [PATCH 1/2] =?UTF-8?q?=EC=95=8C=EA=B3=A0=EB=A6=AC=EC=A6=98=20?= =?UTF-8?q?=EA=B8=B0=EC=B4=88=20DP=20=EB=AC=B8=EC=A0=9C=20=ED=92=80?= =?UTF-8?q?=EC=9D=B4=203?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 알고리즘 기초 DP 문제 풀이 3 --- dynamicProgramming/Code_11053.java | 49 +++++++++++++++++++++++ dynamicProgramming/Code_11054.java | 63 ++++++++++++++++++++++++++++++ dynamicProgramming/Code_11055.java | 49 +++++++++++++++++++++++ dynamicProgramming/Code_11722.java | 49 +++++++++++++++++++++++ dynamicProgramming/Code_1912.java | 41 +++++++++++++++++++ dynamicProgramming/Code_2579.java | 40 +++++++++++++++++++ 6 files changed, 291 insertions(+) create mode 100644 dynamicProgramming/Code_11053.java create mode 100644 dynamicProgramming/Code_11054.java create mode 100644 dynamicProgramming/Code_11055.java create mode 100644 dynamicProgramming/Code_11722.java create mode 100644 dynamicProgramming/Code_1912.java create mode 100644 dynamicProgramming/Code_2579.java diff --git a/dynamicProgramming/Code_11053.java b/dynamicProgramming/Code_11053.java new file mode 100644 index 0000000..9dfebf0 --- /dev/null +++ b/dynamicProgramming/Code_11053.java @@ -0,0 +1,49 @@ +package dynamicProgramming; + +import java.util.Scanner; + +/* + * ۼ : 2018 08 09 + * : ϴ κ + */ +public class Code_11053 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Scanner sc = new Scanner(System.in); + + int num = sc.nextInt(); + + sc.nextLine(); + //Scannerü num + eneter eneterκ nextLine() б⶧ + + String [] arr = sc.nextLine().split(" "); + int [] a = new int[num]; + + for(int i=0; i j° + if(d[j]>d[i]) // i° < j° + d[i]=d[j]; + } + } + d[i] += 1; // ڽű ̿ + } + + int max = 0; + + for(int i : d) + if(maxarr[j]) + if(dp1[i]=0; --i) { + for(int j=num-1; j>=i+1; --j) { + if(arr2[i]>arr2[j]) + if(dp2[i]max) + max = x; + } + + System.out.println(max-1); + + + } +} diff --git a/dynamicProgramming/Code_11055.java b/dynamicProgramming/Code_11055.java new file mode 100644 index 0000000..104591d --- /dev/null +++ b/dynamicProgramming/Code_11055.java @@ -0,0 +1,49 @@ +package dynamicProgramming; + +import java.util.Scanner; + +/* + * ۼ : 2018 08 09 + * : ū ϴ κ + */ +public class Code_11055 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Scanner sc = new Scanner(System.in); + + int num = sc.nextInt(); + + sc.nextLine(); + //Scannerü num + eneter eneterκ nextLine() б⶧ + + String [] arr = sc.nextLine().split(" "); + int [] a = new int[num]; + + for(int i=0; i j° + if(d[j]>d[i]) // i° < j° + d[i]=d[j]; + } + } + d[i] += a[i]; // ڽű ̿ + } + + int max = 0; + + for(int i : d) + if(max=0; --i) { + for(int j=num-1; j>=i; --j) { + if(a[i]>a[j]) { + if(d[i]a[i]) + dp[i] = dp[i-1]+a[i]; + else + dp[i] = a[i]; + } + + int max=dp[0]; + + for(int i=1; i Date: Fri, 10 Aug 2018 11:10:46 +0900 Subject: [PATCH 2/2] =?UTF-8?q?=EC=95=8C=EA=B3=A0=EB=A6=AC=EC=A6=98=20?= =?UTF-8?q?=EA=B8=B0=EC=B4=88=20DP=20=EB=AC=B8=EC=A0=9C=20=ED=92=80?= =?UTF-8?q?=EC=9D=B4=204?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 알고리즘 기초 DP 문제 풀이 4 --- dynamicProgramming/Code_1699.java | 33 +++++++++++++++++++++++++++ dynamicProgramming/Code_2225.java | 35 +++++++++++++++++++++++++++++ dynamicProgramming/Code_9461.java | 37 +++++++++++++++++++++++++++++++ 3 files changed, 105 insertions(+) create mode 100644 dynamicProgramming/Code_1699.java create mode 100644 dynamicProgramming/Code_2225.java create mode 100644 dynamicProgramming/Code_9461.java diff --git a/dynamicProgramming/Code_1699.java b/dynamicProgramming/Code_1699.java new file mode 100644 index 0000000..af668e0 --- /dev/null +++ b/dynamicProgramming/Code_1699.java @@ -0,0 +1,33 @@ +package dynamicProgramming; + +import java.util.Scanner; + +/* + * ۼ : 2018 08 09 + * : + */ +public class Code_1699 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Scanner sc = new Scanner(System.in); + + int n = sc.nextInt(); + + int [] dp = new int[n+1]; + + //̹ n ε DZ ʿ ּ . + for(int i=1; i<=n; ++i) { + dp[i] = i; // 1 i + + for(int j=1; j*j<=i; ++j) { + if(dp[i] > dp[i-j*j]+1) // : dp[i-25]+1 i- + 1 + dp[i] = dp[i-j*j]+1; + } + } + + System.out.println(dp[n]); + + } + +} diff --git a/dynamicProgramming/Code_2225.java b/dynamicProgramming/Code_2225.java new file mode 100644 index 0000000..e57a104 --- /dev/null +++ b/dynamicProgramming/Code_2225.java @@ -0,0 +1,35 @@ +package dynamicProgramming; + +import java.util.Scanner; + +/* + * ۼ : 2018 08 10 + * : պ + */ +public class Code_2225 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Scanner sc = new Scanner(System.in); + + String [] s = sc.nextLine().split(" "); + + int a = Integer.parseInt(s[0]); + int b = Integer.parseInt(s[1]); + + long [][] dp = new long[b+1][a+1]; + + dp[0][0] = 1; + + for(int k=1; k<=b; ++k) { //k ϱ + for(int n=0; n<=a; ++n) { + for(int l=0; l<=n; ++l) + dp[k][n] += dp[k-1][n-l]; + dp[k][n] %= 1000000000L; + } + } + + System.out.println(dp[b][a]); + } + +} diff --git a/dynamicProgramming/Code_9461.java b/dynamicProgramming/Code_9461.java new file mode 100644 index 0000000..c12375e --- /dev/null +++ b/dynamicProgramming/Code_9461.java @@ -0,0 +1,37 @@ +package dynamicProgramming; + +import java.util.Scanner; + +/* + * ۼ : 2018 08 10 + * : ĵ + */ +public class Code_9461 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + Scanner sc = new Scanner(System.in); + + int n = sc.nextInt(); + int x; + long [] dp; + while(n-->0) { + x = sc.nextInt(); + + dp = new long[x]; + + dp[0] = 1; + + for(int i=1; i