๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ92

[LC150] Array/String - 1 ์ด๋ฒˆ์ฃผ๋Š” ๋ฆฌํŠธ์ฝ”๋“œ Top Interview 150 ๋ฌธ์ œ ๋ฆฌ์ŠคํŠธ์—์„œ Array/String ๋ฌธ์ œ 5๊ฐœ๋ฅผ ํ’€์—ˆ๋‹ค. โœ… Merge Sorted Array๋‚œ์ด๋„: โ˜…โ˜…์ด๋ฏธ ๋ฐฐ์—ด์ด ์ •๋ ฌ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— Two pointer ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•ด์„œ ํ’€ ์ˆ˜ ์žˆ๋‹ค. ํŠน์ด์ ์€ nums1 ๋ฐฐ์—ด์— ์ •๋ ฌ๋œ ์š”์†Œ๋ฅผ ๋„ฃ์–ด์•ผ ํ•ด์„œ ๋ฐฐ์—ด ๋งจ ๋์— ์žˆ๋Š” ์š”์†Œ๋ถ€ํ„ฐ ๋น„๊ตํ•ด์„œ ์ฑ„์›Œ๋„ฃ์œผ๋ฉด ๋œ๋‹ค. Merge sort๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์œผ๋ฉด ์–ด๋ ต์ง€ ์•Š๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ. โœ… Remove Element๋‚œ์ด๋„: โ˜…โ˜…โ˜…โ˜…โ˜…์ด ๋ฌธ์ œ๋Š” ์ง„์งœ easy ๋ ˆ๋ฒจ์ธ๋ฐ ์‰ฝ๊ฒŒ ์ƒ๊ฐ์„ ๋ชปํ•ด์„œ ์•„๋ž˜์ฒ˜๋Ÿผ ํ’€๋ ค๊ณ  ํ–ˆ๋‹ค. start, end๋กœ start๋Š” ์กฐ๊ฑด์— ๋งž๋Š” ์š”์†Œ๊ฐ€ ๋“ค์–ด๊ฐˆ ์œ„์น˜๋ฅผ ๊ฐ€๋ฅดํ‚ค๊ณ  end๋Š” ์กฐ๊ฑด์— ๋งž๋Š” ์š”์†Œ๋ฅผ ์ฐพ๋Š” ๋ฐฉ์‹์ด์˜€๋Š”๋ฐ ๋˜ ๋‚ด๊ฐ€ ์ƒ๊ฐํ•œ๋Œ€๋กœ ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์—.. 2025. 3. 16.
์ •์Šน์ œ ์„ ์ƒ๋‹˜์ด์•ผ! ์ง€๊ธˆ EBS 50์ผ ์ˆ˜ํ•™ ์ƒ์„ ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ๋Š”๋ฐ ์ •์Šน์ œ ๊ฐ•์‚ฌ๋‹˜์ด ์œ ๋ช…ํ•˜์‹  ๊ฑด ์•Œ์•˜์ง€๋งŒ (์œ ํŠœ๋ธŒ ์‡ผ์ธ ์— ์ž์ฃผ ๋œธ) ์ด๋ ‡๊ฒŒ ์ž˜ ์ˆ˜ํ•™์„ ์ž˜ ๊ฐ€๋ฅด์ณ ์ฃผ์‹œ๋Š” ์ค„์€ ๋ชฐ๋ž๋‹ค. 50์ผ ์ˆ˜ํ•™์œผ๋กœ ๊ฐœ๋…์„ ๋‹ค์‹œ ๊ณต๋ถ€ํ•˜๊ณ  ๊ณ ๋“ฑ์ˆ˜ํ•™๋„ ํ•˜๋‹ค๋ณด๋ฉด ์–ด๋Š์ƒˆ ์ˆ˜ํฌ์ž์—์„œ ๋ฒ—์–ด๋‚  ์ˆ˜ ์žˆ๊ฒ ์ง€. ์•„๋ฌดํŠผ ์ด 50์ผ ์ˆ˜ํ•™ ๊ฐ•์‚ฌ๋‹˜์ด ์“ด ์ฑ…์ด ์žˆ์–ด์„œ ์ฝ์–ด๋ณด๊ฒŒ ๋ฌ๋‹ค. ์ฑ…์ด ๋‘๊ป์ง€ ์•Š๊ณ  ๋Œ€ํ™”ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ์ˆ ์ˆ  ์ฝํ˜€์„œ ๊ธˆ๋ฐฉ ์ฝ์—ˆ๋Š”๋ฐ ๋‚ด ๋ฉ˜ํƒˆ์— ๋„์›€์ด ๋˜๋Š” ๋ง์ด ๋„ˆ๋ฌด ๋งŽ์•˜๋‹ค. ์ˆ˜ํ•™๋„ ์ž˜ ๋ชปํ•˜๊ณ  ์ฝ”ํ…Œ๋„ ๊ณต๋ถ€๋ฅผ ๊ณ„์† ํ•˜๋Š”๋ฐ ์‹ค๋ ฅ์ด ๋Š˜์ง€ ์•Š์•„์„œ ์˜๊ธฐ์†Œ์นจํ•ด ์žˆ์—ˆ๋Š”๋ฐ ์ด ์ •๋„๋Š” ์ˆ˜ํฌ์ž๋ผ๋„ ์ œ๋Œ€๋กœ๋œ ๋ฐฉ์‹์œผ๋กœ ๋…ธ๋ ฅํ•˜๋ฉด ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ž์‹ ๊ฐ์ด ์ƒ๊ฒผ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฑ…์— ๊ฐ•์˜๋งŒ ๋ด์„œ๋Š” ์ˆ˜ํ•™์‹ค๋ ฅ์ด ๋Š˜์ง€ ์•Š๊ณ  ๋‚ด๊ฐ€ ๊ณ ๋ฏผํ•˜๋Š” ์‹œ๊ฐ„๋งŒํผ ์„ฑ์žฅํ•œ๋‹ค๊ณ  ํ•ด์„œ ๋ฆฌํŠธ์ฝ”๋“œ์—์„œ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๊ฐ€ ์›๋ž˜ 20.. 2025. 3. 11.
[LC150] ๋ฆฌํŠธ์ฝ”๋“œ Top Interview 150 ์‹œ์ž‘ 99ํด๋Ÿฝ ์ฝ”ํ…Œ ์Šคํ„ฐ๋””๊ฐ€ ๋๋‚˜๊ณ  ์ƒˆ๋กญ๊ฒŒ Leetcode top interview 150๊ฐœ ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ์Šคํ„ฐ๋””๋ฅผ ์‹œ์ž‘ํ–ˆ๋‹ค. ํ•œ ์ฃผ์— 5๋ฌธ์ œ์”ฉ ํ’€๋ฉด ๋œ๋‹ค. ๋ฆฌํŠธ์ฝ”๋“œ 150 ๋ฌธ์ œ ๋ฆฌ์ŠคํŠธ๋Š” Array/String, Two Pointers, Sliding Window ์ด๋Ÿฐ์‹์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„๋กœ ๋ฌธ์ œ๊ฐ€ ๋‚˜๋‰˜์–ด ์žˆ์–ด์„œ ์ฃผ์ œ๋ณ„๋กœ ํ•™์Šตํ•˜๊ธฐ ์ข‹๋‹ค.     ์ด๋ฒˆ ์Šคํ„ฐ๋””์˜ ๋ชฉํ‘œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1. ์ตœ๋Œ€ํ•œ ํ˜ผ์ž ํ’€๋ ค๊ณ  ๋…ธ๋ ฅํ•˜๊ธฐ - ํ‘ธ๋Š”๋ฐ ๊ฑธ๋ฆฐ ์‹œ์ž‘ ๊ธฐ๋ก- ์–ด๋–ป๊ฒŒ ํ’€์—ˆ๋Š”์ง€ ๊ธฐ๋ก2. ์Šค์Šค๋กœ ํ’€์ง€ ๋ชป ํ•œ ๋ฌธ์ œ๋Š” ๋ณต์Šตํ•˜๊ธฐ  150๋ฌธ์ œ๋Š” ์ผ์ฃผ์ผ์— 5๊ฐœ์”ฉ ์ด 30์ฃผ -> ์•ฝ 7๊ฐœ์›” ๋™์•ˆ ์ฒœ์ฒœํžˆ ํ•˜์ง€๋งŒ ๊พธ์ค€ํžˆ ํ•  ๊ณ„ํš์ด๋‹ค. ๋ฆฌํŠธ์ฝ”๋“œ์—์„œ๋Š” 2๋…„ ์ „๋ถ€ํ„ฐ ๋ฌธ์ œ๋ฅผ ๊ณ„์† ํ’€์—ˆ์–ด์„œ ์—ฌ๊ธฐ ๋ฆฌ์ŠคํŠธ์— ์žˆ๋Š” ๋ฌธ์ œ๋“ค ์ค‘ 1/2 ์ •๋„๋Š” ๋‹ค ํ‘ผ ๊ฒƒ ๊ฐ™์€๋ฐ ๋‹ค์‹œ ํ’€์–ด.. 2025. 3. 11.
[99ํด๋Ÿฝ] 5์ฃผ ์ฝ”ํ…Œ์Šคํ„ฐ๋”” ํ›„๊ธฐ 5์ฃผ๊ฐ„์˜ ์ฝ”ํ…Œ์Šคํ„ฐ๋””๊ฐ€ ๋๋‚ฌ๋‹ค. ์ฝ”ํ…Œ์ค€๋น„๋ฅผ ๋‹ค์‹œ ์ค€๋น„ํ•ด์•ผ ๋ผ์„œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•  ์ง€ ๊ณ ๋ฏผํ•˜๊ณ  ์žˆ์—ˆ๋Š”๋ฐ ์ง€์ธ์ด ํ•ญํ•ด99์˜ ์ฝ”ํ…Œ์Šคํ„ฐ๋””๋ฅผ ์ถ”์ฒœํ•ด์คฌ๋‹ค. ๊ทธ๋•Œ๋Š” ์ด๋ฏธ 4๊ธฐ๊ฐ€ ์šด์˜๋˜๊ณ  ์žˆ์–ด์„œ ๊ธฐ๋‹ค๋ ธ๋‹ค๊ฐ€ 5๊ธฐ๊ฐ€ ์˜คํ”ˆํ•˜์ž๋งˆ์ž ๋ฐ”๋กœ ์‹ ์ฒญํ–ˆ๋Š”๋ฐ ๋ฒŒ์จ ๋๋‚ฌ๋‹ค๋‹ˆ....   99ํด๋Ÿฝ ์ฝ”ํ…Œ์Šคํ„ฐ๋””๋Š” ๋น„๊ธฐ๋„ˆ, ๋ฏธ๋“ค๋Ÿฌ, ์ฑŒ๋ฆฐ์ €๋กœ ๋‚œ์ด๋„๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ ์ฒ˜์Œ์—๋Š” ๋ฏธ๋“ค๋Ÿฌ๋กœ ์‹ ์ฒญํ–ˆ๋‹ค๊ฐ€ ์–ด๋ ค์šธ ๊ฒƒ ๊ฐ™์•„์„œ ๋น„๊ธฐ๋„ˆ๋กœ ๋ณ€๊ฒฝํ•ด์„œ 5์ฃผ ๋™์•ˆ ๋ฌธ์ œ ํ’€์ด๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค. ํ›„๋ฐ˜๋ถ€์—๋Š” ๊ฑฐ์˜ ํž™ (ํ)์— ๊ด€๋ จ๋œ ๋ฌธ์ œ๊ฐ€ ๋งŽ์ด ๋‚˜์™”๋‹ค.  25์ผ ์ค‘์— ์ด 24์ผ ๋ฌธ์ œ๋ฅผ ํ’€๊ณ , TIL๋„ ์—ด์‹ฌํžˆ ๋‚จ๊ธฐ๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ๋ญ”๊ฐ€ ์˜๋ฌด์ ์œผ๋กœ ๊ณ„์† ๊ธ€๋งŒ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ๋‚˜์ค‘์—๋Š” TIL์€ ์ž˜ ์ž‘์„ฑํ•˜์ง€ ์•Š์•˜๋‹ค. ๋งค์ฃผ ์›”์š”์ผ๋งˆ๋‹ค ๊ฐ ๋ ˆ๋ฒจ์— ๋งž๋Š” ํŠน๊ฐ•๋„ ์ œ๊ณต๋˜๊ณ  ๊ผญ ๋‚ด ๋ ˆ๋ฒจ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ.. 2025. 2. 27.
[99ํด๋Ÿฝ] 21์ผ์ฐจ ๋ฌธ์ œ: ํŒŒ์ผ ์ •๋ฆฌ ๋ฐฑ์ค€ ํŒŒ์ผ ์ •๋ฆฌ ๋ฌธ์ œ. ํ™•์žฅ์ž ๋ช… ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ๋ผ treemap์„ ์‚ฌ์šฉํ•ด์„œ key๋กœ ์ •๋ ฌ. import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.parseInt(st.nextToken()); // ํŒŒ์ผ ๊ฐœ์ˆ˜ // ํŒŒ์ผ ํ™•์žฅ์ž ๋ณ„๋กœ ์นด.. 2025. 2. 17.
[99ํด๋Ÿฝ] 20์ผ์ฐจ ๋ฌธ์ œ: ํšŒ์ „์ดˆ๋ฐฅ ๋ฐฑ์ค€ ํšŒ์ „์ดˆ๋ฐฅ ๋ฌธ์ œ. ์ด์ œ ๋ฌธ์ œ์˜ ๋‹ต์ด ๊ธธ์–ด์ง€๊ณ  ๋ณต์žกํ•ด์ง€๋ฉด์„œ gpt์— ์˜์กดํ•˜๊ณ  ์žˆ๋‹ค....ํ•ด์‹œ๋งต์˜ putIfAbsent() ๋ฉ”์†Œ๋“œ๋Š” ์ž˜ ์‚ฌ์šฉํ•ด ๋ณด์ง€ ์•Š์•˜๋Š”๋ฐ ๋‹ค์Œ๊ธฐํšŒ์— ์‚ฌ์šฉํ•ด๋ณด๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค.  import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); int N = Integer.p.. 2025. 2. 15.