From b3e9dfe15770cb07751cb9380aea42077c1aa351 Mon Sep 17 00:00:00 2001 From: ICE0208 Date: Sat, 15 Aug 2026 19:34:41 +0900 Subject: [PATCH 1/3] reverse bits --- reverse-bits/ICE0208.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 reverse-bits/ICE0208.java diff --git a/reverse-bits/ICE0208.java b/reverse-bits/ICE0208.java new file mode 100644 index 0000000000..bc7502fa1a --- /dev/null +++ b/reverse-bits/ICE0208.java @@ -0,0 +1,12 @@ +class Solution { + public int reverseBits(int n) { + String binary = String.format("%32s", Integer.toBinaryString(n)) + .replace(' ', '0'); + + String reversed = new StringBuilder(binary) + .reverse() + .toString(); + + return Integer.parseUnsignedInt(reversed, 2); + } +} From 5e96c183e5e494aa16e678539aac4cdd91d19954 Mon Sep 17 00:00:00 2001 From: ICE0208 Date: Sat, 15 Aug 2026 20:05:37 +0900 Subject: [PATCH 2/3] p424 --- .../ICE0208.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 longest-repeating-character-replacement/ICE0208.java diff --git a/longest-repeating-character-replacement/ICE0208.java b/longest-repeating-character-replacement/ICE0208.java new file mode 100644 index 0000000000..f2539a5aa0 --- /dev/null +++ b/longest-repeating-character-replacement/ICE0208.java @@ -0,0 +1,25 @@ +class Solution { + public int characterReplacement(String s, int k) { + int[] frequency = new int[26]; + int maxFrequency = 0; + int left = 0; + int maxLength = 0; + + for (int right = 0; right < s.length(); right++) { + int index = s.charAt(right) - 'A'; + frequency[index]++; + + // maxFrequency 갱신 + maxFrequency = Math.max(maxFrequency, frequency[index]); + + // right - left + 1 - maxFrequency : 현재 위도우에서 maxFrequency를 제외한 개수 + while (right - left + 1 - maxFrequency > k) { + frequency[s.charAt(left) - 'A']--; + left++; + } + + maxLength = Math.max(maxLength, right - left + 1); + } + return maxLength; + } +} From e30386bee958a9946507d8ca8137c2a76910308a Mon Sep 17 00:00:00 2001 From: ICE0208 Date: Sat, 15 Aug 2026 20:16:09 +0900 Subject: [PATCH 3/3] =?UTF-8?q?reverse-bits=20=EB=B9=84=ED=8A=B8=20?= =?UTF-8?q?=EC=A1=B0=EC=9E=91=20=EA=B3=84=EC=82=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- reverse-bits/ICE0208.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/reverse-bits/ICE0208.java b/reverse-bits/ICE0208.java index bc7502fa1a..c23eeda693 100644 --- a/reverse-bits/ICE0208.java +++ b/reverse-bits/ICE0208.java @@ -1,3 +1,20 @@ +class Solution2 { + public int reverseBits(int n) { + int result = 0; + + for (int i = 0; i < 32; i++) { + int lastBit = n & 1; // 가장 오른쪽 비트 추출 + + result <<= 1; // 새 비트를 넣을 자리 확보 + result |= lastBit; // 추출한 비트를 오른쪽 끝에 추가 + + n >>>= 1; // 처리한 비트를 버림. + } + + return result; + } +} + class Solution { public int reverseBits(int n) { String binary = String.format("%32s", Integer.toBinaryString(n))