From b2467439c8757198c7a606074d0996b141b96b7f Mon Sep 17 00:00:00 2001 From: JHLEE325 <82587652+JHLEE325@users.noreply.github.com> Date: Wed, 11 Mar 2026 19:42:03 +0900 Subject: [PATCH] =?UTF-8?q?[20260311]=20BOJ=20/=20G5=20/=20=ED=9A=8C?= =?UTF-8?q?=EB=AC=B8=20/=20=EC=9D=B4=EC=A4=80=ED=9D=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../11 BOJ G5 \355\232\214\353\254\270.md" | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 "JHLEE325/202603/11 BOJ G5 \355\232\214\353\254\270.md" diff --git "a/JHLEE325/202603/11 BOJ G5 \355\232\214\353\254\270.md" "b/JHLEE325/202603/11 BOJ G5 \355\232\214\353\254\270.md" new file mode 100644 index 00000000..5fcb07bf --- /dev/null +++ "b/JHLEE325/202603/11 BOJ G5 \355\232\214\353\254\270.md" @@ -0,0 +1,38 @@ +```java +import java.io.*; +import java.util.*; + +public class Main { + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st; + + int T = Integer.parseInt(br.readLine()); + + StringBuilder sb = new StringBuilder(); + while (T-- > 0) { + String s = br.readLine(); + sb.append(palindrom(s, 0, s.length() - 1, 0)).append("\n"); + } + System.out.print(sb); + } + + static int palindrom(String s, int left, int right, int deleted) { + if (deleted >= 2) return 2; + + while (left < right) { + if (s.charAt(left) == s.charAt(right)) { + left++; + right--; + } else { + int resLeft = palindrom(s, left + 1, right, deleted + 1); + int resRight = palindrom(s, left, right - 1, deleted + 1); + + return Math.min(resLeft, resRight); + } + } + + return deleted; + } +} +```