From f6cb87aec81565cc7c57b8aeded63e8f0d82f9e6 Mon Sep 17 00:00:00 2001 From: minje0204 Date: Mon, 7 Mar 2022 20:56:17 +0900 Subject: [PATCH 1/3] =?UTF-8?q?3055.=20=ED=83=88=EC=B6=9C=20solved?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\354\241\260\353\257\274\354\240\234.java" | 53 ++++++++ ...\354\241\260\353\257\274\354\240\234.java" | 119 ++++++++++++++++++ 2 files changed, 172 insertions(+) create mode 100644 "src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" create mode 100644 "src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" diff --git "a/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" "b/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" new file mode 100644 index 0000000..6056d53 --- /dev/null +++ "b/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" @@ -0,0 +1,53 @@ +package algorithm.minje.week5.boj.Q1766; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.ArrayList; +import java.util.List; +import java.util.StringTokenizer; + +public class Main_1766_문제집_조민제 { + static boolean[] problemSolved; + static List[] preProblem; + static int N,M; + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine(), " "); + + + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + problemSolved = new boolean[N]; //선행문제 저장 배열 + preProblem = new ArrayList[N + 1]; + + for (int i = 0; i <= N; i++) { + preProblem[i] = new ArrayList(); + } + + for (int i = 0; i < M; i++) { + StringTokenizer st1 = new StringTokenizer(br.readLine(), " "); + int solvePrev = Integer.parseInt(st1.nextToken()); + int solveNext = Integer.parseInt(st1.nextToken()); + preProblem[solveNext].add(solvePrev); + } + + solve(0); + sb.append(1); + } + + static void solve(int count){ + for (int i = 1; i <= N; i++) { + if(problemSolved[i]){ + if(!preProblem[i].isEmpty()){ +// solve() + } + } + } + } +} diff --git "a/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" "b/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" new file mode 100644 index 0000000..9ef9ff3 --- /dev/null +++ "b/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" @@ -0,0 +1,119 @@ +package algorithm.minje.week5.boj.Q3055; +/* +메모리 : 11984KB +시간 : 92ms + */ +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.*; + +public class Main_3055_탈출_조민제 { + static char[][] map; + static char WATER = '*'; + static char GO_SEUM_DO_CHI = 'S'; + static char BEBBER_CAVE = 'D'; + static char EMPTY_LAND = '.'; + + static int[] dr = {-1, 1, 0, 0}; //상하좌우 + static int[] dc = {0, 0, -1, 1}; +// static int[] GS_LOC; //고슴도치 위치 + static int[] BC_LOC; //비버의굴 위치 + static int time = 0; + static Queue waterQ = new LinkedList<>(); + static Queue pathQ = new LinkedList<>(); + static int R, C; + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine(), " "); + + R = Integer.parseInt(st.nextToken()); + C = Integer.parseInt(st.nextToken()); + + map = new char[R][C]; + + for (int i = 0; i < R; i++) { + char[] input = br.readLine().toCharArray(); + for (int j = 0; j < C; j++) { + inputHandler(input[j], new int[]{i, j}); + map[i][j] = input[j]; + } + } + do { + time++; + if (pathQ.size() == 0) { + System.out.println("KAKTUS"); + break; + } + waterSpread(); + } while (!moveGS()); + + } + + public static void waterSpread() { + int size = waterQ.size(); + while (size-- > 0) { + int[] cur = waterQ.poll(); + for (int d = 0; d < 4; d++) { + int nr = cur[0] + dr[d]; + int nc = cur[1] + dc[d]; + if (isValidRange(nr, nc) && isEmptyLand(nr, nc)) { + map[nr][nc] = '*'; + waterQ.offer(new int[]{nr, nc}); + } + } + } + } + + public static boolean moveGS() { + int size = pathQ.size(); + while (size-- > 0) { + int[] cur = pathQ.poll(); + for (int d = 0; d < 4; d++) { + int nr = cur[0] + dr[d]; + int nc = cur[1] + dc[d]; + if (isValidRange(nr, nc)) { + if (arrived(nr, nc)) { + System.out.println(time); + return true; + } + if (isEmptyLand(nr, nc)) { + map[nr][nc] = WATER; //물로 방문체크 + pathQ.offer(new int[]{nr, nc}); + } + } + } + } + + return false; + } + + public static boolean isValidRange(int nr, int nc) { + return nr >= 0 && nc >= 0 && nr < R && nc < C; + } + + public static boolean isEmptyLand(int nr, int nc) { + return map[nr][nc] == EMPTY_LAND; + } + + public static boolean arrived(int nr, int nc) { + return map[nr][nc] == BEBBER_CAVE; + } + + public static void inputHandler(char input, int[] curCord) { + if (input == GO_SEUM_DO_CHI) { + pathQ.offer(curCord); + } + if (input == BEBBER_CAVE) { + BC_LOC = curCord; + } + if (input == WATER) { + waterQ.offer(curCord); + } + } +} From fb93701fd5bb502ae41f290b562753fc536056f2 Mon Sep 17 00:00:00 2001 From: minje0204 Date: Wed, 9 Mar 2022 23:24:54 +0900 Subject: [PATCH 2/3] 1477, 3079 solved --- ...\354\241\260\353\257\274\354\240\234.java" | 83 +++++++++++++++++++ ...\354\241\260\353\257\274\354\240\234.java" | 55 ++++++++---- ...\354\241\260\353\257\274\354\240\234.java" | 11 +-- ...\354\241\260\353\257\274\354\240\234.java" | 76 +++++++++++++++++ 4 files changed, 203 insertions(+), 22 deletions(-) create mode 100644 "src/algorithm/minje/week5/boj/Q1477/Main_1477_\355\234\264\352\262\214\354\206\214_\354\204\270\354\232\260\352\270\260_\354\241\260\353\257\274\354\240\234.java" create mode 100644 "src/algorithm/minje/week5/boj/Q3079/Main_3079_\354\236\205\352\265\255\354\213\254\354\202\254_\354\241\260\353\257\274\354\240\234.java" diff --git "a/src/algorithm/minje/week5/boj/Q1477/Main_1477_\355\234\264\352\262\214\354\206\214_\354\204\270\354\232\260\352\270\260_\354\241\260\353\257\274\354\240\234.java" "b/src/algorithm/minje/week5/boj/Q1477/Main_1477_\355\234\264\352\262\214\354\206\214_\354\204\270\354\232\260\352\270\260_\354\241\260\353\257\274\354\240\234.java" new file mode 100644 index 0000000..225ed1e --- /dev/null +++ "b/src/algorithm/minje/week5/boj/Q1477/Main_1477_\355\234\264\352\262\214\354\206\214_\354\204\270\354\232\260\352\270\260_\354\241\260\353\257\274\354\240\234.java" @@ -0,0 +1,83 @@ +package algorithm.minje.week5.boj.Q1477; +/* +메모리 : 11720KB +시간 : 80ms + */ +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.Arrays; +import java.util.StringTokenizer; + +public class Main_1477_휴게소_세우기_조민제 { + static int N, M, L; + static int[] diff; + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine(), " "); + + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + L = Integer.parseInt(st.nextToken()); + + diff = new int[N + 1]; + int[] loc = new int[N + 2]; + loc[0] = 0; + StringTokenizer st1 = new StringTokenizer(br.readLine(), " "); + for (int i = 1; i <= N; i++) { + loc[i] = Integer.parseInt(st1.nextToken()); + } + loc[N + 1] = L; + + Arrays.sort(loc); + + //차이구하기 + for (int i = 1; i <= N + 1; i++) { + diff[i - 1] = loc[i] - loc[i - 1]; + } + Arrays.sort(diff); + + int left = 1, right = diff[diff.length - 1]; + int ans = Integer.MAX_VALUE; + while (left <= right) { + int mid = (left + right) / 2; + if (isPassed(mid)) { + ans = Math.min(ans, mid); + right = mid - 1; + continue; + } + left = mid + 1; + } + + sb.append(ans); + bw.write(sb.toString()); + bw.flush(); //왜와이? + } + + public static boolean isPassed(int mid) { + int amount = 0; + for (int i = diff.length - 1; i >= 0; i--) { + if (diff[i] <= mid) break; + int dist = diff[i]; + int divisor = 1; + while (dist > mid) { + dist = diff[i]; + divisor++; + if (dist % divisor != 0) + dist = dist / divisor + 1; + else + dist = dist / divisor; + + } + amount += divisor - 1; + } + + if (amount <= M) return true; + return false; + } +} \ No newline at end of file diff --git "a/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" "b/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" index 6056d53..f579c8a 100644 --- "a/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" +++ "b/src/algorithm/minje/week5/boj/Q1766/Main_1766_\353\254\270\354\240\234\354\247\221_\354\241\260\353\257\274\354\240\234.java" @@ -1,17 +1,26 @@ package algorithm.minje.week5.boj.Q1766; +/* +메모리 : 53276KB +시간 : 476ms + */ + import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.InputStreamReader; import java.io.OutputStreamWriter; -import java.util.ArrayList; -import java.util.List; +import java.util.LinkedList; +import java.util.PriorityQueue; +import java.util.Queue; import java.util.StringTokenizer; public class Main_1766_문제집_조민제 { static boolean[] problemSolved; - static List[] preProblem; - static int N,M; + static PriorityQueue problemWillSolved = new PriorityQueue<>(); + static Queue[] adjList; + static int[] remainProblem; + static int N, M; + public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); @@ -19,35 +28,47 @@ public static void main(String[] args) throws Exception { StringTokenizer st = new StringTokenizer(br.readLine(), " "); - N = Integer.parseInt(st.nextToken()); M = Integer.parseInt(st.nextToken()); - problemSolved = new boolean[N]; //선행문제 저장 배열 - preProblem = new ArrayList[N + 1]; + problemSolved = new boolean[N + 1]; + remainProblem = new int[N + 1]; + adjList = new Queue[N + 1]; for (int i = 0; i <= N; i++) { - preProblem[i] = new ArrayList(); + adjList[i] = new LinkedList<>(); } for (int i = 0; i < M; i++) { StringTokenizer st1 = new StringTokenizer(br.readLine(), " "); int solvePrev = Integer.parseInt(st1.nextToken()); int solveNext = Integer.parseInt(st1.nextToken()); - preProblem[solveNext].add(solvePrev); + adjList[solvePrev].add(solveNext); + remainProblem[solveNext]++; } - solve(0); - sb.append(1); - } - - static void solve(int count){ for (int i = 1; i <= N; i++) { - if(problemSolved[i]){ - if(!preProblem[i].isEmpty()){ -// solve() + if (remainProblem[i] == 0) { + problemWillSolved.offer(i); + problemSolved[i] = true; + } + } + + while (!problemWillSolved.isEmpty()) { + int cur = problemWillSolved.poll(); + sb.append(cur + " "); + int size = adjList[cur].size(); + for (int i = 0; i < size; i++) { + int cand = adjList[cur].poll(); + remainProblem[cand] -= 1; + if (remainProblem[cand] == 0) { + problemSolved[cand] = true; + problemWillSolved.offer(cand); } } } + + bw.write(sb.toString()); + bw.flush(); } } diff --git "a/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" "b/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" index 9ef9ff3..4bd58fb 100644 --- "a/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" +++ "b/src/algorithm/minje/week5/boj/Q3055/Main_3055_\355\203\210\354\266\234_\354\241\260\353\257\274\354\240\234.java" @@ -19,7 +19,7 @@ public class Main_3055_탈출_조민제 { static int[] dr = {-1, 1, 0, 0}; //상하좌우 static int[] dc = {0, 0, -1, 1}; // static int[] GS_LOC; //고슴도치 위치 - static int[] BC_LOC; //비버의굴 위치 +// static int[] BC_LOC; //비버의굴 위치 static int time = 0; static Queue waterQ = new LinkedList<>(); static Queue pathQ = new LinkedList<>(); @@ -44,6 +44,7 @@ public static void main(String[] args) throws Exception { map[i][j] = input[j]; } } + do { time++; if (pathQ.size() == 0) { @@ -63,7 +64,7 @@ public static void waterSpread() { int nr = cur[0] + dr[d]; int nc = cur[1] + dc[d]; if (isValidRange(nr, nc) && isEmptyLand(nr, nc)) { - map[nr][nc] = '*'; + map[nr][nc] = WATER; waterQ.offer(new int[]{nr, nc}); } } @@ -109,9 +110,9 @@ public static void inputHandler(char input, int[] curCord) { if (input == GO_SEUM_DO_CHI) { pathQ.offer(curCord); } - if (input == BEBBER_CAVE) { - BC_LOC = curCord; - } +// if (input == BEBBER_CAVE) { +// BC_LOC = curCord; +// } if (input == WATER) { waterQ.offer(curCord); } diff --git "a/src/algorithm/minje/week5/boj/Q3079/Main_3079_\354\236\205\352\265\255\354\213\254\354\202\254_\354\241\260\353\257\274\354\240\234.java" "b/src/algorithm/minje/week5/boj/Q3079/Main_3079_\354\236\205\352\265\255\354\213\254\354\202\254_\354\241\260\353\257\274\354\240\234.java" new file mode 100644 index 0000000..1c65bc9 --- /dev/null +++ "b/src/algorithm/minje/week5/boj/Q3079/Main_3079_\354\236\205\352\265\255\354\213\254\354\202\254_\354\241\260\353\257\274\354\240\234.java" @@ -0,0 +1,76 @@ +package algorithm.minje.week5.boj.Q3079; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.Arrays; +import java.util.StringTokenizer; + +public class Main_3079_입국심사_조민제 { + static int N, M; + static int[] times; + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + times = new int[N]; + for (int i = 0; i < N; i++) { + int input = Integer.parseInt(br.readLine()); + times[i] = input; + } + + Arrays.sort(times); + +// long max = times[times.length - 1]; + long left = 1; +// long right = max * M; + long right = Integer.MAX_VALUE + 1L; + + + /* + 1. times int->long + 2. times * M + 3. right 대입 + */ +// long right = times[times.length - 1] * M; + /* + 1. times * M int형 계산 범위 안에서 + 2. + */ + long mid = 0; + + System.out.println(right); + long ans = Long.MAX_VALUE; + + while (left <= right) { + mid = (left + right) / 2; + + if (isPassed(times, M, mid)) { + ans = ans > mid ? mid : ans; + right = mid - 1; + } else { + left = mid + 1; + } + } + System.out.println(ans); + } + + public static boolean isPassed(int[] times, int n, long mid) { + long amount = 0; + + for (int i = 0; i < times.length; ++i) { + amount += mid / times[i]; + } + + if (amount >= n) return true; + else return false; + } +} From 2c2f671e9d1bd14c2aff5e492bbe3b371d985449 Mon Sep 17 00:00:00 2001 From: minje0204 Date: Tue, 15 Mar 2022 21:57:54 +0900 Subject: [PATCH 3/3] =?UTF-8?q?=EB=B3=B4=EC=84=9D=EC=87=BC=ED=95=91.=20sol?= =?UTF-8?q?ved?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/algorithm/minje/week6/boj/Q1005/Main.java | 81 +++++++++++++++++++ .../Solution.java" | 67 +++++++++++++++ .../Solution.java" | 17 ++++ .../SolutionTest.java" | 20 +++++ .../Main.java" | 7 ++ .../Solution.java" | 10 +++ 6 files changed, 202 insertions(+) create mode 100644 src/algorithm/minje/week6/boj/Q1005/Main.java create mode 100644 "src/algorithm/minje/week6/pro/\353\263\264\354\204\235\354\207\274\355\225\221/Solution.java" create mode 100644 "src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/Solution.java" create mode 100644 "src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/SolutionTest.java" create mode 100644 "src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Main.java" create mode 100644 "src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Solution.java" diff --git a/src/algorithm/minje/week6/boj/Q1005/Main.java b/src/algorithm/minje/week6/boj/Q1005/Main.java new file mode 100644 index 0000000..ef0cfa9 --- /dev/null +++ b/src/algorithm/minje/week6/boj/Q1005/Main.java @@ -0,0 +1,81 @@ +package algorithm.minje.week6.boj.Q1005; + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.InputStreamReader; +import java.io.OutputStreamWriter; +import java.util.LinkedList; +import java.util.Queue; +import java.util.StringTokenizer; + +public class Main{ + static int T, N, K, W, inDegree[], dp[], times[]; + static LinkedList[] adjList; + + public static void main(String[] args) throws Exception { + + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + T = Integer.parseInt(br.readLine()); + + for (int tc = 0; tc < T; tc++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + K = Integer.parseInt(st.nextToken()); + dp = new int[N + 1]; + inDegree = new int[N + 1]; + adjList = new LinkedList[N + 1]; + times = new int[N + 1]; + + for (int i = 0; i < N + 1; i++) { + adjList[i] = new LinkedList<>(); + } + + StringTokenizer st1 = new StringTokenizer(br.readLine()); + for (int i = 1; i <= N; i++) { + int time = Integer.parseInt(st1.nextToken()); + times[i] = time; + } + for (int i = 0; i < K; i++) { + StringTokenizer st2 = new StringTokenizer(br.readLine()); + int from = Integer.parseInt(st2.nextToken()); + int to = Integer.parseInt(st2.nextToken()); + adjList[from].add(to); + inDegree[to]++; + } + + W = Integer.parseInt(br.readLine()); + + Queue q = new LinkedList<>(); + for (int i = 0; i < N + 1; i++) { + if (inDegree[i] == 0) { + q.offer(i); + dp[i] = times[i]; + } + } + + + LOOP: + while (!q.isEmpty()) { + int cur = q.poll(); + if (cur == W) { + break LOOP; + } + + for (int i = 0, size = adjList[cur].size(); i < size; i++) { + int cand = adjList[cur].poll(); + inDegree[cand]--; + dp[cand]=Math.max(dp[cand],dp[cur]+times[cand]); + if (inDegree[cand] == 0) { + q.offer(cand); + } + } + } + + bw.write(dp[W]+"\n"); + } + bw.flush(); + } +} diff --git "a/src/algorithm/minje/week6/pro/\353\263\264\354\204\235\354\207\274\355\225\221/Solution.java" "b/src/algorithm/minje/week6/pro/\353\263\264\354\204\235\354\207\274\355\225\221/Solution.java" new file mode 100644 index 0000000..e3ff3bf --- /dev/null +++ "b/src/algorithm/minje/week6/pro/\353\263\264\354\204\235\354\207\274\355\225\221/Solution.java" @@ -0,0 +1,67 @@ +package algorithm.minje.week6.pro.보석쇼핑; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Set; + +public class Solution { + static HashMap map = new HashMap(); + + static void putEle(String key) { + if (map.containsKey(key)) { + map.put(key, map.get(key) + 1); + return; + } + map.put(key, 1); + } + + static void removeEle(String key) { + if (map.get(key) == 1) { + map.remove(key); + return; + } + map.put(key, map.get(key) - 1); + } + + public static int[] solution(String[] gems) { + int[] answer = {}; + int minDiff = Integer.MAX_VALUE; + Set set = new HashSet(Arrays.asList(gems)); + + + int i = 0; + int j = 0; + + + while (true) { + + while (j= gems.length && map.size() != set.size()) break; + + while (true) { + removeEle(gems[i]); + i++; + if (map.size() != set.size()) break; + } + + if(minDiff > j-i){ + minDiff=j-i; + answer=new int[]{i,j}; + } + } + + return answer; + } + + public static void main(String[] args) { + int[] result = solution(new String[]{"ZZZ", "YYY", "NNNN", "YYY", "BBB"}); + + System.out.println(result[0] + "," + result[1]); + } +} diff --git "a/src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/Solution.java" "b/src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/Solution.java" new file mode 100644 index 0000000..4e641ac --- /dev/null +++ "b/src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/Solution.java" @@ -0,0 +1,17 @@ +package algorithm.minje.week6.pro.수식최대화; + +public class Solution { + + public long solution(String expression) { + long answer = 0; + + boolean[] aa = new boolean[3]; + + boolean[] b= aa.clone(); + + + return answer; + } +} + + diff --git "a/src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/SolutionTest.java" "b/src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/SolutionTest.java" new file mode 100644 index 0000000..d325709 --- /dev/null +++ "b/src/algorithm/minje/week6/pro/\354\210\230\354\213\235\354\265\234\353\214\200\355\231\224/SolutionTest.java" @@ -0,0 +1,20 @@ +package algorithm.minje.week6.pro.수식최대화; + + +import static org.junit.jupiter.api.Assertions.*; + +import org.junit.jupiter.api.Test; + +class SolutionTest { + + @org.junit.jupiter.api.Test + void solution() { + String expression = "100-200*300-500+20"; + int exp = 60420; + Solution solution = new Solution(); + long result = solution.solution(expression); + + assertEquals(exp,result); + } + +} \ No newline at end of file diff --git "a/src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Main.java" "b/src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Main.java" new file mode 100644 index 0000000..67be5ac --- /dev/null +++ "b/src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Main.java" @@ -0,0 +1,7 @@ +package algorithm.minje.week6.pro.키패드_누르기; + +public class Main { + public static void main(String[] args) { + Solution s = new Solution(); + } +} diff --git "a/src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Solution.java" "b/src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Solution.java" new file mode 100644 index 0000000..1921586 --- /dev/null +++ "b/src/algorithm/minje/week6/pro/\355\202\244\355\214\250\353\223\234_\353\210\204\353\245\264\352\270\260/Solution.java" @@ -0,0 +1,10 @@ +package algorithm.minje.week6.pro.키패드_누르기; + +public class Solution { + public String solution(int[] numbers, String hand) { + String answer = ""; + return answer; + } +} + +