From aa60d92b873763267b6ffbd6107bf1d3eb45a807 Mon Sep 17 00:00:00 2001 From: "hjeom.dev" Date: Mon, 15 Dec 2025 20:50:09 +0900 Subject: [PATCH 1/3] Valid Parentheses --- valid-parentheses/hjeomdev.java | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 valid-parentheses/hjeomdev.java diff --git a/valid-parentheses/hjeomdev.java b/valid-parentheses/hjeomdev.java new file mode 100644 index 000000000..dc9205f4c --- /dev/null +++ b/valid-parentheses/hjeomdev.java @@ -0,0 +1,25 @@ +class Solution { + public boolean isValid(String s) { + // 스택... 머리속에 떠오르는 생각은 있는데 정리가 안됌.. + // 해설 읽음 + + Map parens = new HashMap<>(); + parens.put('(', ')'); + parens.put('{', '}'); + parens.put('[', ']'); + + Stack stack = new Stack<>(); + + for(char c : s.toCharArray()) { + if (parens.containsKey(c)) { + stack.push(c); + } else { + if (stack.isEmpty() || c != parens.get(stack.pop())) { + return false; + } + } + } + + return stack.isEmpty(); + } +} \ No newline at end of file From 533c70fc6207a4a2b7d4bd7f95c5ee0a8aac085b Mon Sep 17 00:00:00 2001 From: "hjeom.dev" Date: Mon, 15 Dec 2025 20:50:42 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=EB=A7=88=EC=A7=80=EB=A7=89=20=EA=B0=9C?= =?UTF-8?q?=ED=96=89=EB=AC=B8=EC=9E=90=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- valid-parentheses/hjeomdev.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/valid-parentheses/hjeomdev.java b/valid-parentheses/hjeomdev.java index dc9205f4c..d636fa60b 100644 --- a/valid-parentheses/hjeomdev.java +++ b/valid-parentheses/hjeomdev.java @@ -22,4 +22,4 @@ public boolean isValid(String s) { return stack.isEmpty(); } -} \ No newline at end of file +} From be51247aaf7058bf5de723b3bc3dcc68718b0eba Mon Sep 17 00:00:00 2001 From: "hjeom.dev" Date: Mon, 15 Dec 2025 21:18:55 +0900 Subject: [PATCH 3/3] Container With Most Water --- container-with-most-water/hjeomdev.java | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 container-with-most-water/hjeomdev.java diff --git a/container-with-most-water/hjeomdev.java b/container-with-most-water/hjeomdev.java new file mode 100644 index 000000000..04598c532 --- /dev/null +++ b/container-with-most-water/hjeomdev.java @@ -0,0 +1,26 @@ +class Solution { + public int maxArea(int[] height) { + // 높이 순서대로 정렬해서, 처음부터 2개씩 잡아서 너비를 구하는 방법 => n^2 + // 해설 참고함. -> 포인터 2개를 둬서 양측에서 시작해서 중간에 만날때까지 최대값을 구한다 + int s = 0; + int e = height.length - 1; + int result = 0; + + while(s < e) { + int h = height[s] < height[e] ? height[s] : height[e]; + int w = e - s; + int cur = h * w; + if (cur > result) { + result = cur; + } + + if (height[s] < height[e]) { + s++; + } else { + e--; + } + // System.out.println(s + " " + e + " " + cur); + } + return result; + } +}