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

์ฝ”๋”ฉํ…Œ์ŠคํŠธ/TIL25

[99ํด๋Ÿฝ] 14์ผ์ฐจ ๋ฌธ์ œ: ์‹๋‹น ๋ฉ”๋‰ด ์˜ค๋Š˜์„ ๋ฐฑ์ค€ ์‹๋‹น๋ฉ”๋‰ด ๋ฌธ์ œ์˜€๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์ดํ•ดํ•˜๊ธฐ ๋„ˆ๋ฌด ์–ด๋ ค์› ๋‹ค. ๊ทธ๋ž˜์„œ ๋‹ต์•ˆ์„ ์ฐธ๊ณ ํ–ˆ๋Š”๋ฐ ์ฝ๊ณ  ๋‚˜๋‹ˆ ์–ด๋ ค์šด ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์˜€๋Š”๋ฐ ๋ฌธ์ž์—ด ์ž…๋ ฅ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์•ผ ํ•ด์„œ ๋” ๋ณต์žกํ•ด์ง„ ๊ฒƒ ๊ฐ™๋‹ค. ์ฝ”๋“œ๋„ ๊ธธ์–ด์ง€๊ณ . ๋ฐ‘์— ์ฝ”๋“œ๋Š” GPT๋ฅผ ๋„์›€์„ ๋ฐ›์•„ ์ž‘์„ฑํ–ˆ๋‹ค. 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)); BufferedWriter bw = new BufferedWriter(new OutputStreamW.. 2025. 2. 6.
[99ํด๋Ÿฝ] 13์ผ์ฐจ ๋ฌธ์ œ: ํ ์˜ค๋Š˜์€ ๋น„๊ธฐ๋„ˆ ๋ ˆ๋ฒจ์ด ์•„๋‹Œ ๋ฏธ๋“ค๋Ÿฌ ๋ ˆ๋ฒจ์— ๋„์ „ํ•ด๋ณด๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ๋ฐฑํŠธ๋ž˜ํ‚น์„ ์‚ฌ์šฉํ•ด์„œ ํ’€์–ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์—ฌ์„œ ใ… ใ…  ๊ทธ๋ƒฅ ๋น„๊ธฐ๋„ˆ ๋ ˆ๋ฒจ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค. ๋ฐฑ์ค€ ํ ๋ฌธ์ œ์˜€๊ณ  ์ €๋ฒˆ์— ํ’€์—ˆ๋˜ ์Šคํƒ ๋ฌธ์ œ์™€ ๋น„์Šทํ•ด์„œ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ์„ ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ArrayList๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ’€์—ˆ๋”๋‹ˆ ํ‹€๋ ธ๋‹ค๊ณ  ๋‚˜์™€์„œ LinkedList ๋ณ€๊ฒฝํ•˜๊ณ  ๋˜ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚˜์™€์„œ ์Šค์บ๋„ˆ๊ฐ€ ์•„๋‹Œ BufferedReader๋กœ ๋ฐ”๊ฟ”์ค˜์•ผ ํ–ˆ๋‹ค. ๋ฐ‘์— ์ฝ”๋“œ๋Š” GPT๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ์ž‘์„ฑ๋œ ๊ฑฐ๋ผ BufferedReader + StringBuilder ์‚ฌ์šฉ๋ฐฉ๋ฒ•์„ ์—ฐ์Šตํ•ด์•ผ๊ฒ ๋‹ค.  import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOE.. 2025. 2. 6.
[99ํด๋Ÿฝ] 12์ผ์ฐจ ๋ฌธ์ œ: ๋ง‰๋Œ€๊ธฐ ๋ฐฑ์ค€ ๋ง‰๋Œ€๊ธฐ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค. ์•ฝ๊ฐ„ monotonic stack ๋А๋‚Œ์ด ๋‚˜์„œ ์–ด๋ ค์šธ๊นŒ๋ด ๊ธด์žฅํ–ˆ๋Š”๋ฐ ๋น„๊ธฐ๋„ˆ ๋ ˆ๋ฒจ์ด์—ฌ์„œ ๋ฌด๋‚œํ•˜๊ฒŒ ํ’€ ์ˆ˜ ์žˆ์—ˆ๋‹ค.  import java.util.*;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int[] arr = new int[N]; for(int i = 0; i = 0; i--) { if(max 2025. 2. 4.
[99ํด๋Ÿฝ] 11์ผ์ฐจ ๋ฌธ์ œ: ์Šคํƒ ์˜ค๋Š˜์€ ๋ฐฑ์ค€ ์Šคํƒ ๋ฌธ์ œ์˜€๊ณ  ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•ด ์Šคํƒ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด์„œ ์ธ๋ฑ์Šค๋กœ ์œ„์น˜๊ฐ’์„ ํŠธ๋ž˜ํ‚นํ•˜๋„๋ก ์ž‘์„ฑํ–ˆ๋‹ค. sc.nextInt()๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋‚˜๋ฉด \n ๊ฐœํ–‰๋ฌธ์ž๊ฐ€ ๋‚จ์•„์žˆ์–ด์„œ sc.nextLine()์œผ๋กœ ํ•œ ๋ฒˆ  ํ˜ธ์ถœํ•ด์„œ ๋ฒ„ํผ์—์„œ ๊ฐœํ–‰๋ฌธ์ž๋ฅผ ์ œ๊ฑฐ ํ•ด์ค€ ๋‹ค์Œ์— ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ถ€๋ถ„์ด ๋‚˜๋ฆ„ ์–ด๋ ค์› ๋‹ค.  import java.util.*;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); sc.nextLine(); String[] stack = new String[N];.. 2025. 2. 3.
[99ํด๋Ÿฝ] 10์ผ์ฐจ ๋ฌธ์ œ: ํšŒ์ƒ ์˜ค๋Š˜์€ ๋ฐฑ์ค€ ํšŒ์ƒ ๋ฌธ์ œ์˜€๊ณ  ์ด๊ฒƒ๋„ ํ•ด์‹œ๋งต์œผ๋กœ ๊ฐ„๋‹จํžˆ ํ’€ ์ˆ˜ ์žˆ์—ˆ๋‹ค.  import java.util.*;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String[] nm = sc.nextLine().split(" "); int N = Integer.parseInt(nm[0]); int M = Integer.parseInt(nm[1]); int result = 0; Map hm = new HashMap(); for.. 2025. 1. 24.
[99ํด๋Ÿฝ] 9์ผ์ฐจ ๋ฌธ์ œ: ์ „์ฃผ ๋“ฃ๊ณ  ๋…ธ๋ž˜ ๋งžํžˆ๊ธฐ ์ „์ฃผ ๋“ฃ๊ณ  ๋…ธ๋ž˜ ๋งžํžˆ๊ธฐ ๋ฌธ์ œ๋กœ hashmap์„ ์‚ฌ์šฉํ•ด์„œ ํ’€๋ฉด ๋œ๋‹ค. ๋‹ค๋งŒ ์–ด๋ ค์šด๊ฑด....์ž…๋ ฅ๊ฐ’ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ถ€๋ถ„???์ „ํ˜€ ์žฌํ™œ์šฉ ํ•  ์ˆ˜ ์—†๋Š” ํ•˜๋“œ์ฝ”๋”ฉ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋Š”๋ฐ ๋ณดํ†ต ๋น„๊ธฐ๋„ˆ ๋ ˆ๋ฒจ์˜ ๊ฒฝ์šฐ ์—ฃ์ง€์ผ€์ด์Šค๋ฅผ ํ™•์ธํ•  ์ผ์ด ๊ฑฐ์˜ ์—†์–ด์„œ ์ด๋ ‡๊ฒŒ ํ‘ธ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. (ํ•˜์ง€๋งŒ ๋ณ„๋กœ ์ข‹์ง€ ์•Š์€ ๋ฐฉ๋ฒ•์ž„...) ๋ฆฌํŠธ์ฝ”๋“œ ์—ญ์‹œ ๋ณดํ†ต easy ๋ ˆ๋ฒจ์˜ ๊ฒฝ์šฐ brute force ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€ ์ˆ˜ ์žˆ๊ณ  ๋ฌธ์ œ์—์„œ ์–ด๋–ป๊ฒŒ ํ’€์–ด์•ผ ํ•˜๋Š”์ง€ ๋‹ค ์•Œ๋ ค์ฃผ๋Š” ํŽธ์ด๋‹ค. ๊ทธ๋ž˜์„œ ๊ตฌํ˜„ ์—ฐ์Šตํ•˜๊ธฐ์—๋Š” ๋ฆฌํŠธ์ฝ”๋“œ๊ฐ€ ์ •๋ง ๋„์›€์ด ๋งŽ์ด ๋œ๋‹ค. ์ง€๊ธˆ ์ด ๋ฌธ์ œ์—์„œ ํ‚ค๋Š” ํ•ด์‹œ๋งต์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฑด๋ฐ ์ž…๋ ฅ๊ฐ’ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๋” ์–ด๋ ค์›Œ์„œ ๋‚œ์ด๋„๊ฐ€ ๋” ๋†’์€ ๋А๋‚Œ์ด๋‹ค. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์—์„œ๋„ ๋ฌธ์ œ๊ฐ€ ๋‚˜์˜ค๋ฉด ์ข‹๊ฒ ๋Š”๋ฐ ๊ณ„์† ๋ฐฑ์ค€๋งŒ ๋‚˜์˜ค๋„ค..  import java.util.*;publi.. 2025. 1. 23.