user-img
์ฝ”๋”ฉํ…Œ์ŠคํŠธ 27
thumbnail
[๋ฐฑ์ค€] 1991 ํŠธ๋ฆฌ ์ˆœํšŒ java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ๐Ÿ—ƒ๏ธKEY WORD: ์žฌ๊ท€, DFSํ•ด๋‹น ๋ฌธ์ œ์—์„œ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š” ์ž‘์—…์—๋Š” 3๊ฐ€์ง€๋กœ ์™ผ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ, ํ˜„ ๋…ธ๋“œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ, ์˜ค๋ฅธ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ๊ฐ€ ์žˆ๋‹ค. ํ•ด๋‹น ๋ฌธ์ œ๋Š” '์ด ์ˆœ์„œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€?'์— ๋Œ€ํ•œ ๊ธฐ์ค€์„ ์„ธ์šฐ๋ฉด ์‰ฝ๊ฒŒ ํ’€๋ฆฐ๋‹ค. ์™œ๋ƒํ•˜๋ฉด, ์ „์œ„, ์ค‘์œ„, ํ›„์œ„ ์ˆœํšŒ๋Š” ๋ฏธ๋ฆฌ ์ •ํ•ด์ง„ ์ˆœ์„œ๋ฅผ ์žฌ๊ท€์ ์œผ๋กœ ๋ฐ˜๋ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ฐ ์ˆœํšŒ ๋ณ„ 3๊ฐ€์ง€ ์ž‘์—…์— ๋Œ€ํ•œ ์ˆœ์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.1๏ธโƒฃ ์ „์œ„ ์ˆœํšŒ: ํ˜„ ๋…ธ๋“œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌโžœ ์™ผ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ โžœ ์˜ค๋ฅธ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ2๏ธโƒฃ ์ค‘์œ„ ์ˆœํšŒ: ์™ผ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ โžœ ํ˜„ ๋…ธ๋“œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ โžœ ์˜ค๋ฅธ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ3๏ธโƒฃ ํ›„์œ„ ์ˆœํšŒ: ์™ผ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ โžœ ์˜ค๋ฅธ์ชฝ ์ž์‹ ๋ฐฉ๋ฌธ โžœ ํ˜„ ๋…ธ๋“œ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ์˜ˆ๋ฅผ ๋“ค์–ด ๋ณด๋ฉด, ํ›„์œ„ ์ˆœํšŒ๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค๊ณ  ํ•ด๋ณด์ž. ๋จผ์ € ..
2025.01.22
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 1114 ํ†ต๋‚˜๋ฌด ์ž๋ฅด๊ธฐ java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ์ผ๋ฐ˜์ ์ธ ๋งค๊ฐœ๋ณ€์ˆ˜ ํƒ์ƒ‰์ด๋‚˜ ์ด๋ถ„ ํƒ์ƒ‰ ๋ฌธ์ œ๋ณด๋‹ค ๊นŒ๋‹ค๋กœ์› ๋˜ ์ ์€,1๏ธโƒฃ ํ†ต๋‚˜๋ฌด์˜ ์ž๋ฅผ ์ˆ˜ ์žˆ๋Š” ์œ„์น˜๊ฐ€ ์ •ํ•ด์ ธ ์žˆ๋‹ค.2๏ธโƒฃ ํ†ต๋‚˜๋ฌด์˜ ๊ฐ€์žฅ ๊ธด ์กฐ๊ฐ์„ ์ž‘๊ฒŒ ๋งŒ๋“ค์—ˆ์„ ๋•Œ, ์ œ์ผ ์ฒ˜์Œ ์ž๋ฅธ ์œ„์น˜๋„ ๊ฐ™์ด ์ถœ๋ ฅ ํ•ด๋ผ.์˜€๋‹ค. ์ด๊ฑธ ์œ ๋…ํ•˜๋ฉฐ ๋ฌธ์ œ๋ฅผ ํ’€์–ด์•ผ ํ•œ๋‹ค.2. ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ๐Ÿ—ƒ๏ธKEY WORD: Parametric Search, Binary Search, Greedy Algorithm0๏ธโƒฃ ํ†ต๋‚˜๋ฌด๋ฅผ ์ž๋ฅผ ์ˆ˜ ์žˆ๋Š” ์œ„์น˜๋ฅผ ๋ฐ›์•„์„œ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ๋‹ค.1๏ธโƒฃ ์ด๋ถ„ํƒ์ƒ‰์œผ๋กœ ํ†ต๋‚˜๋ฌด์˜ ๊ฐ€์žฅ ๊ธด ์กฐ๊ฐ์˜ ์ตœ์†Œ๊ฐ’์„ ๊ตฌํ•œ๋‹ค. ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.1๏ธโƒฃ-1) f(w) = ๋ชจ๋“  ์กฐ๊ฐ๋‚œ ํ†ต๋‚˜๋ฌด์˜ ๊ธธ์ด๊ฐ€ w ์ดํ•˜์ธ๊ฐ€? ๋ผ๋Š” ๊ฒฐ์ •๋ฌธ์ œ ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ ๋‹ค. ์ด๋ฅผ ๋งŒ์กฑํ•˜๋Š” f(w) ์ค‘ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” f(w)์˜..
2025.01.21
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
๋ฒจ๋งŒ ํฌ๋“œ ์•Œ๊ณ ๋ฆฌ์ฆ˜, ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
1. ๋ฒจ๋งŒํฌ๋“œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€?์Œ์ˆ˜์ธ ๊ฐ€์ค‘์น˜๊ฐ€ ์กด์žฌํ•˜๋Š” ๊ทธ๋ž˜ํ”„์—์„œ๋„ ์ตœ๋‹จ ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜.1๏ธโƒฃ ONE TO ALL ์•Œ๊ณ ๋ฆฌ์ฆ˜: ์‹œ์ž‘์ ์„ ๊ณ ๋ฅด๋ฉด, ํ•ด๋‹น ์ •์ ์—์„œ ๋ชจ๋“  ์ •์ ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.2๏ธโƒฃ ์Œ์ˆ˜ ๊ฐ€์ค‘์น˜๊ฐ€ ์žˆ์–ด๋„ ๊ดœ์ฐฎ์•„: ๋‹ค์ต์ŠคํŠธ๋ผ๋Š” ์•ˆ๋˜์ง€?3๏ธโƒฃ ์Œ์ˆ˜ ์‚ฌ์ดํด์ด ์กด์žฌํ•˜๋Š”์ง€๋„ ํ™•์ธ ๊ฐ€๋Šฅ: ์Œ์ˆ˜ ์‚ฌ์ดํด์ด ์กด์žฌํ•œ๋‹ค๋ฉด, ์‚ฌ์‹ค ํ•˜๋‚˜ ์ด์ƒ์˜ ์ •์ ์œผ๋กœ์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ๊ฐ€ $- \infty $๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์—, ์ตœ๋‹จ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒŒ ๋ฌด์˜๋ฏธํ•ด์ง. ๋”ฐ๋ผ์„œ ์ตœ๋‹จ ๊ฒฝ๋กœ๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒŒ ๋ฌด์˜๋ฏธํ•œ์ง€ ์—ฌ๋ถ€๋„ ํŒŒ์•… ๊ฐ€๋Šฅ!์Œ์ˆ˜ ์‚ฌ์ดํด๊ฐ€์ค‘์น˜ ๊ทธ๋ž˜ํ”„์—์„œ ์ •์  A์—์„œ ์‹œ์ž‘ํ•ด์„œ A๋กœ ๋Œ์•„์™”๋Š”๋ฐ ๊ฐ€์ค‘์น˜์˜ ํ•ฉ์ด ์Œ์ˆ˜์ธ ๊ฒฝ์šฐ, ํ•ด๋‹น ์‚ฌ์ดํด์„ ์Œ์ˆ˜ ์‚ฌ์ดํด์ด๋ผ๊ณ  ํ•œ๋‹ค.ํ•ด๋‹น ์˜ˆ์‹œ์—์„œ๋Š” ์‚ฌ์ดํด์„ ๋Œ์ˆ˜๋ก ์ถœ๋ฐœ์ง€์—์„œ A,B,C๊นŒ์ง€์˜..
2025.01.18
์•Œ๊ณ ๋ฆฌ์ฆ˜/์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก 
thumbnail
99ํด๋Ÿฝ ์ฝ”ํ…Œ ์Šคํ„ฐ๋”” 5๊ธฐ 2์ผ์ฐจ TIL + ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv4 ๊ฐ€์‚ฌ ๊ฒ€์ƒ‰
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ๐Ÿ—ƒ๏ธKEY WORD: ํŠธ๋ผ์ด0๏ธโƒฃ ์ค‘์š”ํ•œ ์ฒ˜์Œ ์„ธํŒ…!: Tri ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“œ๋Š”๋ฐ ๊ตฌ์„ฑ์š”์†Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.(a) `๊ธฐ๋ณธ์ ์ธ ์ž์‹ ๋…ธ๋“œ`: HashMap๋กœ ๊ตฌํ˜„ (์ž์‹ ์•ŒํŒŒ๋ฒณ ์ด๋ฆ„, ๊ทธ๊ฒƒ์˜ ๊ฐ์ฒด)(b) `lenMap`: ํ˜„์žฌ ์กฐํšŒ ์ค‘์ธ ๋ฌธ์ž ๋’ค๋กœ ๋ถ€ํ„ฐ ์ „๋ถ€ ๋ฌผ์Œํ‘œ๋ผ๊ณ  ์ณค์„ ๋•Œ, ๊ทธ ์™€์ผ๋“œ์นด๋“œ๋ฅผ ๋งŒ์กฑํ•˜๋Š” ๋ฌธ์ž๊ฐ€ ๋ช‡ ๊ฐœ ์žˆ๋Š”์ง€ ์„ธ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ, HashMap๋กœ ๊ตฌํ˜„ (๋ฌธ์ž์—ด์˜ ๊ธธ์ด, ๋งŒ์กฑํ•˜๋Š” ๋ฌธ์ž ๊ฐœ์ˆ˜)1๏ธโƒฃ ์ž…๋ ฅ: ๋ฌธ์ž์—ด ๊ทธ๋Œ€๋กœ ๋ฐ›๋Š” Tri ํ•˜๋‚˜, ๋ฌธ์ž์—ด์„ ๋’ค์ง‘์–ด์„œ ๋ฐ›๋Š” Tri ํ•˜๋‚˜์”ฉ ๋งŒ๋“ค์–ด ๊ฐ๊ฐ ๋”ฐ๋กœ ๋”ฐ๋กœ ์ž…๋ ฅ ๋ฐ›์Œ์ž…๋ ฅ๋ฐ›์œผ๋ฉด์„œ, ๋งค๋ฒˆ LenMap์˜ ๊ฐ’์„ ๊ฐฑ์‹ ํ•œ๋‹ค.2๏ธโƒฃ ์ฐพ๊ธฐ: ์™€์ผ๋“œ์นด๋“œ ?๋ฅผ ๋งŒ๋‚˜๊ธฐ ์ „๊นŒ์ง€, ํŠธ๋ผ์ด๋ฅผ ๊นŠ๊ฒŒ ๋“ค์–ด๊ฐ„๋‹ค. ๋ฐ˜ํ™˜๊ฐ’์ด ๋ ..
2025.01.15
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 5052 ์ „ํ™”๋ฒˆํ˜ธ ๋ชฉ๋ก java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ๋ฌธ์ œ์—์„œ ์›ํ•˜๋Š” ๊ฒƒ์€ A์˜ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ์น˜๊ณ  ์žˆ๋˜ ์™€์ค‘์—, B์˜ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ์™„์„ฑ์‹œ์ผœ์„œ, B๋กœ ์ „ํ™”๊ฐ€ ๊ฑธ๋ฆฌ๋Š” ์ผ์ด ์—†์œผ๋ฉด ์ผ๊ด€์„ฑ์ด TRUE, ์ „ํ™”๊ฐ€ ํ•œ ๋ฒˆ์ด๋ผ๋„ ๊ฑธ๋ฆฌ๋ฉด FALSE๋ผ๋Š” ๋œป์ด๋‹ค.์ฆ‰ 'ํ•˜๋‚˜์˜ ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋‹ค๋ฅธ ์ „ํ™”๋ฒˆํ˜ธ์˜ ์ ‘๋‘์–ด๊ฐ€ ๋˜๋Š”์ง€?'๋ฅผ ํ™•์ธํ•˜๋ผ๋Š” ๋ฌธ์ œ์ด๋‹ค.2. ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ๐Ÿ—ƒ๏ธKEY WORD: TRI๊ธฐ๋ณธ์ ์ธ ํŠธ๋ผ์ด๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•œ ๋ฌธ์ œ๋ผ ๋”ฐ๋กœ ๋ถ€์—ฐ ์„ค๋ช…ํ•  ๊ฒƒ์ด ์—†๋‹ค. ์•„์ง ํŠธ๋ผ์ด์— ๋Œ€ํ•œ ๊ฐœ๋…์ด ์—†๋‹ค๋ฉด, ๋ฏธ๋ฆฌ ํ•™์Šต ํ•˜๊ณ  ์˜ค์‹œ๊ธธ ๋ฐ”๋ž€๋‹ค.0๏ธโƒฃ HashMap์„ ํ™œ์šฉํ•˜์—ฌ ์ „ํ˜•์ ์ธ ํŠธ๋ผ์ด ๊ตฌ์กฐ ํŠธ๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค. + ๋ฌธ์ž์—ด์„ ์‚ฝ์ž…ํ•˜๋Š” insert ๋งค์†Œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค.1๏ธโƒฃ ๋ฌธ์ž์—ด (์ดํ•˜ str)์„ ํŠธ๋ผ์ด์— ์‚ฝ์ž…ํ•œ๋‹ค.2๏ธโƒฃ ๋งŒ์•ฝ str์„ ์‚ฝ์ž…ํ•˜๋Š” ๋„์ค‘์—, ํ˜„์žฌ ์กฐํšŒ ์ค‘์ธ ๋ฌธ์ž๊ฐ€ ..
2025.01.14
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 1939 ์šฉ๋Ÿ‰์ œํ•œ java, ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ๊ฐ€์ค‘์น˜ ์–‘๋ฐฉํ–ฅ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ถœ๋ฐœ์ง€์—์„œ ๋„์ฐฉ์ง€ ๊นŒ์ง€ ํ•œ๋ฒˆ์˜ ์ด๋™์œผ๋กœ ๊ฐ€์ ธ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋ฌผ๊ฑด์˜ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์„ ๊ตฌํ•˜์—ฌ๋ผ.2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: Parametric Search, Binary_Search,DFS(1) ๊ฐ€์ค‘์น˜ ์–‘๋ฐฉํ–ฅ ๊ทธ๋ž˜ํ”„๋ฅผ ์ธ์ ‘๋ฆฌ์ŠคํŠธ๋กœ ๊ตฌํ˜„ํ•œ๋‹ค.(2) ์ด๋ถ„ํƒ์ƒ‰์„ ํ™œ์šฉํ•ด, ํ•œ๋ฒˆ์— ์˜ฎ๊ธธ ์ˆ˜ ์žˆ๋Š” ๋ฌผ๊ฑด์˜ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์„ ๊ตฌํ•œ๋‹ค. (์ด๋ถ„ ํƒ์ƒ‰์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง„ํ–‰ ๋œ๋‹ค.)a. ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์ตœ๋Œ€ ์ค‘๋Ÿ‰๊ณผ ์ตœ์†Œ ์ค‘๋Ÿ‰์„ ํ™œ์šฉํ•ด ์ค‘์•™๊ฐ’์„ ๊ตฌํ•œ๋‹ค.b. ํ•ด๋‹น ์ค‘์•™๊ฐ’์„ ํ•œ ๋ฒˆ์— ์˜ฎ๊ธธ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ค‘๋Ÿ‰์ด๋ผ ์ณค์„ ๋•Œ, ๋„์ฐฉ์ง€๊นŒ์ง€ ์˜ฎ๊ธฐ๋Š” ๊ฒŒ ๊ฐ€๋Šฅํ•œ์ง€ ํ™•์ธํ•œ๋‹ค.c-1. ๊ฐ€๋Šฅํ•˜๋‹ค๋ฉด ์ตœ์†Œ ์ค‘๋Ÿ‰์„ ํ˜„ ์ค‘์•™๊ฐ’ + 1 ์˜ฌ๋ ค์„œ, ๋‹ค์Œ์— ๊ตฌํ•  ์ค‘์•™๊ฐ’์„ ์ƒํ–ฅ ์กฐ์ • ํ•œ๋‹ค.c-2 .๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค..
2025.01.11
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 17976 Thread Knots
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ๋ฌธ์ œx ์ค‘์‹ฌ์„  ์œ„์— n๊ฐœ์˜ Thread๊ฐ€ ์กด์žฌํ•œ๋‹ค. $T_{i}$๋ผ ๋ถˆ๋ฆฌ๋Š” i๋ฒˆ์งธ Thread์˜ ๊ธธ์ด๋Š” $l_{i}$์™€ ํ•ด๋‹น Thread์˜ ์‹œ์ž‘ ์ง€์  ์œ„์น˜์ธ $x_{i}$๋กœ ๋‚˜ํƒ€๋‚ด์–ด ์ง„๋‹ค. ๋‘ ๋ณ€์ˆ˜ ๋ชจ๋‘ Integer ์ด๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ฐ๊ฐ์˜ Thread ๋งˆ๋‹ค ๋งค๋“ญ์„ ์ง“๊ณ  ์‹ถ์–ด ํ•œ๋‹ค. ๋งค๋“ญ์˜ ์œ„์น˜ ๋˜ํ•œ ๋ฐ˜๋“œ์‹œ Integer์—ฌ์•ผ ํ•œ๋‹ค. ๋งค๋“ญ์€ Thread ์•ˆ์˜ ์–ด๋Š ์ง€์ ์—์„œ๋“  ์ƒ๊ด€ ์—†์ด ๋งŒ๋“ค์–ด์งˆ ์ˆ˜ ์žˆ๊ณ , Thread์˜ ๊ธธ์ด๊ฐ€ ๋งค๋“ญ์— ์˜ํ•ด ์ค„์–ด๋“ค์ง€ ์•Š๋Š”๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ๋‹น์‹ ์€ ๋˜ํ•œ ์–ด๋– ํ•œ Thread๋„ ๋˜ ๋‹ค๋ฅธ Thread์— ์˜ํ•ด ์™„์ „ํžˆ ํฌํ•จ๋˜์–ด์ง€์ง€ ์•Š๋Š”๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค. ์–ด๋–ค ์˜๋ฏธ๋ƒ๋ฉด, $x_j$ ์šฐ๋ฆฌ๋Š” ๊ฐ€์žฅ ๊ฐ€๊น๊ฒŒ ์ธ์ ‘ํ•œ ๋‘ ๋งค๋“ญ ์‚ฌ์ด์˜ ๊ฑฐ๋ฆฌ๋ฅผ ๊ฐ€๋Šฅํ•œ ํ•œ ํฌ๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ ๊ฐ Th..
2025.01.10
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
์Šฌ๋ผ์ด๋”ฉ ๋‹จ์กฐ ํ, ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
1. ์Šฌ๋ผ์ด๋”ฉ ๋‹จ์กฐ ํ๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?์Šฌ๋ผ์ด๋”ฉ ๋‹จ์กฐ ํ๋ž€, DECK์„ ํ™œ์šฉํ•ด ๊ตฌํ˜„ํ•œ ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ๋กœ, ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ๊ตฌ๊ฐ„ ๋‚ด์˜ ์ตœ์†Œ๊ฐ’, ์ตœ๋Œ€๊ฐ’์„ O(1)์— ์ฐพ๊ธฐ ์œ„ํ•ด ๊ณ ์•ˆํ•œ ๊ตฌํ˜„์ฒด์ด๋‹ค. ๋‹จ์กฐ๋ผ๋Š” ์ด๋ฆ„์ด ๋ถ™์€ ์ด์œ ๋Š”, ๊ตฌ๊ฐ„ ๋‚ด ์ตœ์†Œ๊ฐ’์„ ์ฐพ๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ, Deck ๋‚ด๋ถ€ ์›์†Œ๋“ค์ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์œ ์ง€๋˜๊ณ , ๊ตฌ๊ฐ„ ๋‚ด ์ตœ๋Œ€๊ฐ’์ด ์ฐพ๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์œ ์ง€๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.์‚ฌ์‹ค ๋‚ด๊ฐ€ ๋งŒ๋“  ์ด๋ฆ„์ด๋‹ค...๐Ÿ˜‚์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ์‹ฌํ™” ๋ฌธ์ œ๋ฅผ ํ’€๋ฉด์„œ, ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ๋ฅผ Deck์œผ๋กœ ๊ตฌํ˜„ํ•œ ํ˜•ํƒœ๊ฐ€ ๊พธ์ค€ํžˆ ๋‚˜์˜ค๋Š”๋ฐ, ์ธํ„ฐ๋„ท ์—ฌ๊ธฐ ์ €๊ธฐ ์ฐพ์•„๋ด๋„, ํ˜•ํƒœ๋งŒ ์žˆ์„ ๋ฟ ์ด๊ฒƒ์˜ ์ œ๋Œ€๋กœ ๋œ ์ด๋ฆ„์ด ์—†์—ˆ๋‹ค.๋”ฐ๋ผ์„œ ์ •์‹ ๋ช…์นญ์€ ์•„๋‹ˆ์ง€๋งŒ! ์„ค๋ช…์˜ ํŽธ์˜๋ฅผ ์œ„ํ•ด ์•ž์œผ๋กœ ํ˜„ ๊ตฌ๊ฐ„ ๋‚ด์˜ ์ตœ์†Œ๊ฐ’๊ณผ ์ตœ๋Œ€๊ฐ’์„ ์ฐพ๊ธฐ ์œ„ํ•ด Deck์œผ๋กœ ๊ตฌํ˜„ํ•œ ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ๋ฅผ ..
2025.01.07
์•Œ๊ณ ๋ฆฌ์ฆ˜/์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก 
thumbnail
๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰ ๊ธฐ๋ณธ(DFS&BFS), ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
0. ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰์˜ ๊ธฐ๋ณธ์ธ DFS์™€ BFS๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€?๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰์ด๋ž€, ์ •์ ๊ณผ ๊ฐ„์„ ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๊ทธ๋ž˜ํ”„์—์„œ ํŠน์ • ์ •์ ์„ ์„ ํƒํ•˜๊ณ , ํ•ด๋‹น ์ •์ ์—์„œ ์ธ์ ‘ํ•œ ์ •์ ์„ ๋ฐฉ๋ฌธํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ์ •์  ๋ฐฉ๋ฌธ ๋ฐฉ๋ฒ•์—๋Š” ํฌ๊ฒŒ 2๊ฐ€์ง€๊ฐ€ ์žˆ๋Š”๋ฐ, ์ด๊ฒƒ์ด ์•ž์œผ๋กœ ์‚ดํŽด๋ณผ DFS์™€ BFS์ด๋‹ค.์šฐ๋ฆฌ๋Š” ์œ„์˜ ๊ทธ๋ž˜ํ”„๋ฅผ ์˜ˆ์‹œ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ ํ•˜๋‚˜์”ฉ ์ดํ•ดํ•ด ๋ณด๊ฒ ๋‹ค.1. DFSDFS๋Š” Depth First Search์˜ ์•ฝ์ž๋กœ ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์„ ๋œปํ•œ๋‹ค. ๋ง ๊ทธ๋Œ€๋กœ ๋ฐฉ๋ฌธํ•˜๊ธฐ๋กœ ์ •ํ•œ ์ธ์ ‘ ์ •์ ์˜ ์ตœ๋Œ€ ๊นŠ์ด๊นŒ์ง€ ํƒ์ƒ‰์„ ๋งˆ์นœ ํ›„, ๋‹ค์Œ ์ธ์ ‘ ์ •์ ์„ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด๋‹ค.์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋…ผ๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.(1) ํ˜„์žฌ ์ •์ ๊ณผ ์ธ์ ‘ํ•œ ์ •์ ์„ ๋ฐฉ๋ฌธํ•œ๋‹ค.(2) ๋ฐฉ๋ฌธํ•œ ์ •์ ์—์„œ ์•„์ง ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์ •์ ์ด ์žˆ๋‹ค๋ฉด ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ์ •์ ์„ ๋ชจ๋‘ ๋ฐฉ๋ฌธํ•  ๋•Œ๊นŒ์ง€ (..
2025.01.07
์•Œ๊ณ ๋ฆฌ์ฆ˜/์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก 
thumbnail
[๋ฐฑ์ค€] 1459 ๊ฑท๊ธฐ
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: GREEDY ALGORITHM(1) ๋ชฉ์ ์ง€์˜ x์ถ• ํ˜น์€ y์ถ•์— ์ผ์น˜ํ•  ๋•Œ๊นŒ์ง€ ๋Œ€๊ฐ์„  ๊ฐ€๋กœ์ง€๋ฅด๊ธฐ๋กœ ์ด๋™ํ•œ๋‹ค. ๋น„์šฉ = Math.min(2*S, W)(2) ๋ชฉ์ ์ง€์™€ x์ถ• ํ˜น์€ y์ถ•์ด ์ผ์น˜ํ•œ ์ดํ›„์—๋Š” ํ•œ์นธ ์ด๋™๊ณผ ๋Œ€๊ฐ์„  ๊ฐ€๋กœ์ง€๋ฅด๊ธฐ ์ค‘ ์ตœ์†Œ ๋น„์šฉ์„ ํƒํ•ด์„œ ์ด๋™ํ•œ๋‹ค.a. S > W์ธ ๊ฒฝ์šฐ (๋ชฉ์ ์ง€ - ํ˜„ ์œ„์น˜) == ์ง์ˆ˜์ผ ๊ฒฝ์šฐ W๋กœ๋งŒ ์ด๋™, ํ™€์ˆ˜ ์ผ ๊ฒฝ์šฐ, ๋ชฉ์ ์ง€-1๊นŒ์ง€ W๋กœ ์ด๋™ ํ›„ ๋งˆ์ง€๋ง‰ ํ•œ ๋ฒˆ์„ S๋กœ ์ด๋™b. S ์ธ ๊ฒฝ์šฐ, S๋กœ ์ญ‰ ์ด๋™ 3. ์ฝ”๋“œ ์†Œ๊ฐœ ๐Ÿ”Žimport java.io.*;import java.util.Arrays;import java.util.StringTokenizer;public class Main { /* ..
2025.01.06
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 18185 ๋ผ๋ฉด ์‚ฌ๊ธฐ (small) java ํ’€์ด, ๊ทธ๋ฆผ์œผ๋กœ ์ดํ•ดํ•˜๊ธฐ
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œโœจ ๋ฌธ์ œ ๋งํฌ โœจ๋ฌธ์ œ ์„ค๋ช…์ด ๊ฝค ์ง๊ด€์ ์ด๋‹ค. ๋‹ค๋งŒ ๋‚ด๊ฐ€ ํ•œ ๋ฒˆ์— ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ ๋ถ€๋ถ„์ด ์žˆ์–ด, ๊ทธ์— ๋Œ€ํ•œ ๋ถ€์—ฐ ์„ค๋ช…์„ ํ•˜๊ณ  ๋‹ค์Œ ์žฅ์œผ๋กœ ๋„˜์–ด๊ฐ€๊ฒ ๋‹ค.๊ต์ค€์ด๋Š” i๋ฒˆ ๊ณต์žฅ์—์„œ ์ •ํ™•ํ•˜๊ฒŒ Ai๊ฐœ์˜ ๋ผ๋ฉด์„ ๊ตฌ๋งคํ•˜๊ณ ์ž ํ•œ๋‹ค(1 ≤ i ≤ N).๋ฌธ์ œ์˜ ์ž…๋ ฅ์œผ๋กœ ์ผ๋ จ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ฃผ์–ด์ง€๋Š”๋ฐ, ํ•ด๋‹น ๋ฐ์ดํ„ฐ์˜ index = ๊ณต์žฅ, value = ํ•ด๋‹น ๊ณต์žฅ์—์„œ ์‚ฌ์•ผํ•  ๋ผ๋ฉด์˜ ๊ฐœ์ˆ˜ ๋ผ๋Š” ๋œป์ด๋‹ค.2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: DP(๊ฐ€) ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ 3๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ์ˆ™์ง€ํ•œ๋‹ค.i๋ฒˆ ๊ณต์žฅ์—์„œ ๋ผ๋ฉด์„ ํ•˜๋‚˜ ๊ตฌ๋งคํ•œ๋‹ค(1 ≤ i ≤ N). ์ด ๊ฒฝ์šฐ ๋น„์šฉ์€ 3์›์ด ๋“ ๋‹ค.i๋ฒˆ ๊ณต์žฅ๊ณผ (i+1)๋ฒˆ ๊ณต์žฅ์—์„œ ๊ฐ๊ฐ ๋ผ๋ฉด์„ ํ•˜๋‚˜์”ฉ ๊ตฌ๋งคํ•œ๋‹ค(1 ≤ i ≤ N-1). ์ด ๊ฒฝ์šฐ ๋น„์šฉ์€ 5์›์ด ๋“ ๋‹ค.i๋ฒˆ ๊ณต์žฅ๊ณผ ..
2025.01.05
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฆฌํŠธ์ฝ”๋“œ] 1235 Maximum Profit in Job Scheduling
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌํ•œ ๊ฐœ ์ด์ƒ์˜ ์ผ์ด ์กด์žฌํ•˜๊ณ , ์ผ๋งˆ๋‹ค ์‹œ์ž‘์‹œ๊ฐ„, ๋์‹œ๊ฐ„, ์™„๋ฃŒํ–ˆ์„ ๋•Œ ์ด์ต ์ด ์ฃผ์–ด์งˆ ๋•Œ, ์ฃผ์–ด์ง„ ์ผ๋ จ์˜ ์ผ๋“ค์—์„œ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ์ด์ต์„ ๋ฐ˜ํ™˜ํ•˜๋ผ.์กฐ๊ฑด์„ ํƒํ•œ ์ผ๋“ค์€ ์„œ๋กœ ์ผ์˜ ์ง„ํ–‰ ์‹œ๊ฐ„์ด ๊ฒน์น˜๋ฉด ์•ˆ๋œ๋‹ค.A๋ผ๋Š” ์ผ์˜ endTime = X ์ด๊ณ , B๋ผ๋Š” ์ผ์˜ startTime = X์ด๋ฉด A์™€ B๋ฅผ ์—ฐ๋‹ฌ์•„ ์ผํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋Š” ๊ฒน์น˜๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•˜์ง€ ์•Š๋Š”๋‹ค.2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: DP(1) ์ดˆ๊ธฐํ™”(๊ฐ€) ๊ฐ๊ฐ ์‚ฐ์žฌ๋˜์–ด ์žˆ๋Š” startTime, endTime, profit์„ ๊ฐ™์€ ์ผ ๋‹จ์œ„๋กœ ๋ฌถ์–ด์„œ ๋‚˜์—ด โžœ class Job + ArrayList(๋‚˜) ArrayList๋ฅผ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ์ด๋ฅธ ์ˆœ์œผ๋กœ ์ •๋ ฌ(๋‹ค) DP์šฉ ๋ฐฐ์—ด maxProfit[] ๋งŒ๋“ค๊ธฐ (maxProfit[..
2025.01.04
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฆฌํŠธ์ฝ”๋“œ] 912 sort an array java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌํ•ด๋‹น ๋ฌธ์ œ๋Š” ์ž์‹ ์ด ์‚ฌ์šฉํ•˜๋Š” ์–ธ์–ด์˜ ๋‚ด๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ •๋ ฌ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  O(nlog(n))์— ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š” ๊ฒƒ์ด ๊ด€๊ฑด์ด๋‹ค.(๋ฌธ์ œ์—์„œ๋„ ์ง„์งœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ •๋ ฌ์„ ์ผ๋Š”์ง€ ์•ˆ ์ผ๋Š”์ง€๋Š” ์–‘์‹ฌ์— ๋งก๊ฒผ๋‹ค...)2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKey word: Merge sort๋ณ‘ํ•ฉ ์ •๋ ฌ์˜ ์ตœ์•…์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ O(nlog(n))์ด๊ธฐ ๋•Œ๋ฌธ์— ์“ฐ๋ฉด ํ’€๋ฆฐ๋‹ค. ํ•˜์ง€๋งŒ ํ•œ ๊ฐ€์ง€ ๋ฐฑ์ค€๊ณผ ๋‹ค๋ฅธ ์ ์ด ์žˆ์–ด 1์‹œ๊ฐ„ ๋™์•ˆ ํ—ค๋ฉ˜ ๋ถ€๋ถ„์ด ์žˆ๋‹ค. ๋ฆฌํŠธ์ฝ”๋“œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ž์ฒด์˜ ์‹œ๊ฐ„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ ์ƒ๊ธฐ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์˜ค๋ฒ„ ํ—ค๋“œ, ๊ฐ€๋น„์ง€ ์ปฌ๋ž™์…˜ ๋ถ€๋‹ด์— ๋”ฐ๋ฅธ ์‹คํ–‰ ์‹œ๊ฐ„ ์ฆ๊ฐ€ ๋˜ํ•œ ์‹คํ–‰์‹œ๊ฐ„์— ํฌํ•จ์‹œํ‚ค๋Š” ๋“ฏ ํ•˜๋‹ค.๊ทธ๋ ‡๊ฒŒ ๋Š๋‚€ ์ด์œ ๋Š” ๋‚ด๊ฐ€ Merge_sort๋ฅผ ํ•˜๋ฉด์„œ ๋ถ€๋ถ„ ์ •๋ ฌ๋œ ๊ฐ’๋“ค์„ ๋„ฃ์„ tmp ์ž„์‹œ ๋ฐฐ์—ด์„ ๋งค ์žฌ๊ท€..
2025.01.03
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 11004 K-๋ฒˆ์งธ ์ˆ˜ ํ’€์ด java
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: QUICK SORTING์‚ฌ์‹ค JAVA ๋‚ด๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์žˆ๋Š” Sorting์„ ์“ฐ๋ฉด ๊ฐ„๋‹จํžˆ ํ•ด๊ฒฐ๋˜๋Š” ๋ฌธ์ œ์ด์ง€๋งŒ, Qucik Sorting ์—ฐ์Šต์„ ์œ„ํ•ด Quick Sorting์„ ์‚ฌ์šฉํ•ด ๋ณด์•˜๋‹ค. quick sorting์˜ ๊ฒฝ์šฐ, ์ตœ์•…์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ O( $N^2$ )์ด๋ผ์„œ ๋ฌธ์ œ์— ์ œ์‹œ๋œ ์ตœ๋Œ€ ๋ฐ์ดํ„ฐ ๋Ÿ‰์„ ๋ณด๋ฉด, ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚˜์•ผ ํ•˜๋Š” ๊ฒƒ์ด ๋งž๋‹ค. (์•„๋งˆ Quick Sorting์„ ์“ฐ๋ฉด ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋‚˜๋Š” ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋ฅผ ์•ˆ ๋„ฃ์–ด๋†“์€ ๊ฒƒ ๊ฐ™๋‹ค.)(1) ํฐ ํ๋ฆ„(1) ํ˜„์žฌ ์ •๋ ฌํ•ด์•ผ ํ•˜๋Š” ์˜์—ญ์˜ ์ค‘์•™๊ฐ’์„ PIVOT์œผ๋กœ ์„ ์ •(2) PIVOT์„ ์˜์—ญ ์ตœ์ขŒ๋‹จ ๊ฐ’๊ณผ ์ž๋ฆฌ ๊ต์ฒด. (pivot์€ ๋น„๊ต ๋Œ€์ƒ์— ์†ํ•˜์ง€ ์•Š๋„๋ก ํ•˜๊ธฐ ์œ„ํ•จ.)(3) PIVOT์„ ์ œ์™ธ..
2025.01.02
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv2 ๊ฐ€์žฅ ํฐ ์ˆ˜ java ์‰ฌ์šด ํ’€์ด^^
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ๋งํฌ๋ฌธ์ œ ์„ค๋ช…์ด ์ง๊ด€์ ์ด๋ผ ์„ค๋ช… ์ƒ๋žต2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: custom Sorting์ •๋ ฌ ๋ฌธ์ œ ์˜€์ง€๋งŒ, ์ง์ ‘ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์—ˆ๊ณ , ์ •๋ ฌ์˜ ๊ธฐ์ค€์„ ์ง์ ‘ ์ œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•œ ๋ฌธ์ œ์˜€๋‹ค. ํ•„์ž๋Š” ๋ฌธ์ œ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ง์ ‘ ๊ตฌํ˜„์œผ๋กœ ๊ฐ€๋‹ฅ์„ ์ž˜๋ชป ์žก๊ณ  ๋“ค์–ด๊ฐ€์„œ ์—„์ฒญ ํ—ค๋ฉจ๋‹ค. ํ•ด๋‹น ๋‚ด์šฉ์€ ๋ฐฐ์šด ๊ฒƒ๋“ค์— ๋” ์ž์„ธํžˆ ๊ธฐ์ˆ  ํ•˜๊ณ  ์—ฌ๊ธฐ์„œ๋Š” ์–ด๋–ป๊ฒŒ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š”์ง€์— ์ดˆ์ ์„ ๋งž์ถ”๊ฒ ๋‹ค.(1) ์ •๋ ฌ ๊ธฐ์ค€Numbers ๋ฐฐ์—ด์˜ ์›์†Œ ์ค‘ ์ž„์˜์˜ ํ•˜๋‚˜๋ฅผ A, A์˜ ๋‹ค์Œ ์›์†Œ๋ฅผ B๋ผ๊ณ  ํ•˜์ž. ์ด ์ˆซ์ž๋“ค์„ ๋ฌธ์ž์—ด์ด๋ผ ๊ฐ€์ •ํ–ˆ์„ ๋•Œ, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ด์–ด ๋ถ™์ผ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค. AB ํ˜•ํƒœBA ํ˜•ํƒœ์ด ๋‘ ํ˜•ํƒœ ์ค‘ ๋ฌด์—‡์ด ํฐ์ง€๋ฅผ ๋Œ€์†Œ ๊ด€๊ณ„ ๋น„๊ตํ•˜๋ฉด ๋œ๋‹ค.AB > BA , A๊ฐ€ ์•ž์— ..
2025.01.01
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
Quick ์ •๋ ฌ, ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
1. Quick ์ •๋ ฌ์€ ๋ฌด์—‡์ธ๊ฐ€?Pivot(์ค‘์ถ”)๊ฐ€ ๋˜๋Š” ๊ฐ’์„ ํ•˜๋‚˜ ์„ ์ •ํ•ด์„œ ๊ทธ ๊ฐ’๋ณด๋‹ค ์ž‘์€ ๊ฐ’์€ ์™ผ์ชฝ์œผ๋กœ, ํฐ ๊ฐ’์€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ชจ์€๋‹ค. ์ด์ œ ๋‚˜๋ˆ ์ง„ ๋‘ ๊ทธ๋ฃน ๋‚ด์—์„œ ๋‹ค์‹œ Pivot์„ ์„ ์ •ํ•˜๊ณ  ์ด ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ๊ฐ’์„ ๋” ์ด์ƒ ์ชผ๊ฐค ์ˆ˜ ์—†์„ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋ฉด ๋ชจ๋“  ๊ฐ’์ด ์ •๋ ฌ๋˜์–ด ์žˆ๋‹ค.2. ์›๋ฆฌ๋ณ‘ํ•ฉ์ •๋ ฌ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ถ„ํ•  ์ •๋ณต์„ ํ™œ์šฉํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ์˜ˆ์‹œ์ด๋‹ค. ๋ณ‘ํ•ฉ ์ •๋ ฌ์—์„œ๋Š” ์„  ๋ถ„ํ•  ํ›„ ์ •๋ณต ์ด์—ˆ๋‹ค๋ฉด, quick ์ •๋ ฌ์€ ์„  ์ •๋ณต, ํ›„ ๋ถ„ํ•  ํ˜•์‹์ด๋ผ ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ฒ ๋‹ค.์ •๋ณต์—๋Š” ๋งˆ์ฃผ๋ณด๋Š” ํˆฌ ํฌ์ธํ„ฐ๊ฐ€ ํ™œ์šฉ๋œ๋‹ค. ์–ด๋–ป๊ฒŒ ์“ฐ์ด๋Š”์ง€๋Š” ๋ฐ‘์˜ ์˜ˆ์‹œ์—์„œ ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค. (1) Pivot ์ •ํ•˜๊ธฐ (์ •ํ•˜๋Š” ๋ฐฉ์‹์€ ๋•Œ์— ๋งž๊ฒŒ ์ž์œ )(2) Pivot๋ณด๋‹ค ํฐ ๊ฐ’์€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ชฐ๊ธฐ, ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ๊ฐ’์€ ์™ผ์ชฝ์œผ๋กœ ๋ชฐ๊ธฐ (์ •๋ณต by ํˆฌ ํฌ..
2024.12.31
์•Œ๊ณ ๋ฆฌ์ฆ˜/์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก 
thumbnail
[๋ฐฑ์ค€] 1253 ์ข‹๋‹ค. java ํ’€์ด (๊ทธ๋ฆผ์œผ๋กœ ์‰ฌ์šด ์„ค๋ช… ^^)
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ์ผ๋ จ์˜ ์ˆ˜๊ฐ€ 1์ฐจ์› ๋ฐฐ์—ด ํ˜•์‹์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ ์ˆ˜๋“ค ์ค‘ ์ž„์˜์˜ ์ˆ˜ ํ•˜๋‚˜๋ฅผ ๋‹ค๋ฅธ ์ˆ˜ ๋‘๊ฐœ์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์žˆ์„ ๋•Œ, ์ด ์ž„์˜์˜ ์ˆ˜๋ฅผ ์ข‹์€ ์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ์ข‹์€ ์ˆ˜๊ฐ€ ๋ฐฐ์—ด ๋‚ด์— ๋ช‡ ๊ฐœ์ธ์ง€ ๊ตฌํ•˜๋ผ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKey Word: Two-way Two Pointer๋‘ ํฌ์ธํ„ฐ์˜ ํ•ฉ > target: R ํฌ์ธํ„ฐ๋ฅผ ํ•œ ์นธ ๋‚ด๋ ค ํ•ฉ์„ ํ•˜ํ–ฅ ์กฐ์ •๋‘ ํฌ์ธํ„ฐ์˜ ํ•ฉ : L ํฌ์ธํ„ฐ๋ฅผ ํ•œ ์นธ ์˜ฌ๋ ค ํ•ฉ์„ ์ƒํ–ฅ ์กฐ์ •๋‘ ํฌ์ธํ„ฐ์˜ ํ•ฉ == target: ๋‹ต์„ +1 ์˜ฌ๋ฆฌ๊ณ  ๋ฐ˜๋ณต๋ฌธ ์ข…๋ฃŒ(1) ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š”? N = 2000 ์œผ๋กœ ์ด์ค‘ ๋ฐ˜๋ณต๋ฌธ๊นŒ์ง€ ํ—ˆ์šฉ ๋ฒ”์œ„์ด๋‹ค. ๋”ฐ๋ผ์„œN๊ฐœ ์ค‘์— ํ•˜๋‚˜ Target ๊ฐ’์œผ๋กœ ์ฐพ๊ธฐ (O(N))๋‘ ํฌ์ธํ„ฐ ์›€์ง์ด๋ฉฐ Target ๊ฐ’ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€ ์ฐพ๊ธฐ (O(N))๋‘ ์›€์ง์ž„์€ ..
2024.12.26
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 2905 ํ™์ค€์ด์™€ ์šธํƒ€๋ฆฌ ๋ฌธ์ œ ํ’€์ด java (๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์„ค๋ช… ^^)
1
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ๋ฌธ์ œ ์„ค๋ช…์ด ์–ด๋ ค์›Œ์„œ ๋ถ€์—ฐ ์„ค๋ช…์„ ํ•˜๊ฒ ๋‹ค.N๊ฐœ์˜ ์šธํƒ€๋ฆฌ์™€ ๋„ˆ๋น„๊ฐ€ X์ธ ๋ฃฐ๋Ÿฌ๊ฐ€ ์žˆ๋‹ค. ์šธํƒ€๋ฆฌ์˜ ๊ฒฝ์šฐ ๋„ˆ๋น„๋Š” 1๋กœ ๊ณ ์ •์ด๊ณ , ๋†’์ด๋งŒ 1์ฐจ์› ๋ฐฐ์—ด ํ˜•์‹์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค. ๋‹น์‹ ์€ ๋ฃฐ๋Ÿฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํŽ˜์ธํŠธ๋ฅผ ์น ํ•  ๊ฒƒ์ธ๋ฐ, ๋„ˆ๋น„๊ฐ€ X์ž„์œผ๋กœ, X ๋„ˆ๋น„ ๋‚ด์˜ ์šธํƒ€๋ฆฌ๋Š” ํ•œ ๋ฒˆ์— ์น ํ•˜๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•œ ์กฐ๊ฑด์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. (1) ๋ฃฐ๋Ÿฌ์˜ ๋ถ€๋ถ„์ด ํ—ˆ๊ณต์— ๋‹ฟ์œผ๋ฉด ์•ˆ๋œ๋‹ค.์™ผ์ชฝ๊ณผ ๊ฐ™์ด ์ผ๋ จ์˜ ์šธํƒ€๋ฆฌ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค๋ฉด, ์˜ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์˜ ํ…Œ๋‘๋ฆฌ ์•ˆ ์ชฝ๋งŒ ๋กค๋Ÿฌ๋ฅผ ๋Œ๋ ค ์น ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ง์ด๋‹ค. ์ฆ‰ ๋กค๋Ÿฌ ๋„ˆ๋น„ X ๋‚ด์— ์ œ์ผ ์ž‘์€ ์šธํƒ€๋ฆฌ๊ฐ€ ์ƒ‰์น ์˜ ๊ธฐ์ค€์ด ๋œ๋‹ค. (2) ์น ํ•œ๋ฐ๋Š” ๋˜ ์น ํ•  ์ˆ˜ ์žˆ๋‹ค.๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋กค๋Ÿฌ์˜ ๋„ˆ๋น„๊ฐ€ 3์ผ ๋•Œ, ์ฒ˜์Œ ๋งž๋”ฑ๋œจ๋ฆฌ๋Š” ๊ตฌ๊ฐ„์—์„œ๋Š” ์ตœ๋Œ€๋กœ ์น ํ•  ์ˆ˜ ์žˆ๋Š” ๋†’์ด๊ฐ€ 1์ผ ๊ฒƒ์ด๋‹ค.๋กค๋Ÿฌ๋ฅผ ํ•œ ์นธ ..
2024.12.25
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 3020 ๊ฐœ๋˜ฅ๋ฒŒ๋ ˆ java ์™„๋ฒฝ ํ’€์ด!
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: ๋ˆ„์  ํ•ฉ, ์ด๋ถ„ ํƒ์ƒ‰๋™๊ตด์˜ ๋†’์ด์ธ H์™€ ๊นŠ์ด์ธ N์ด ๊ฐ๊ฐ \(10^{5}\)์ด๋ฏ€๋กœ, ์™„์ „ ํƒ์ƒ‰์œผ๋กœ ํ•˜๋‚˜์˜ ํ–‰๋งˆ๋‹ค ๋ชจ๋“  ์—ด์„ ์กฐํšŒํ•œ๋‹ค๋ฉด 1์ดˆ์— \(10^{10}\)๋ฒˆ ์ด์ƒ์˜ ์—ฐ์‚ฐ์„ ํ•ด์•ผํ•ด์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋‚  ๊ฒƒ์ด๋‹ค.ํ•ด๋‹น ๋ฌธ์ œ๋Š” *๊ฑฐ๊พธ๋กœ ๋งค๋‹ฌ๋ ค ์žˆ๋Š” ์ข…์œ ์„์„ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ•  ๊ฒƒ์ธ๊ฐ€?* ์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ๊ฐ€์ด๋“œ๋ผ์ธ๋งŒ ๊ณ„ํšํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ํ’€ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ข…์œ ์„ ์ฒ˜๋ฆฌ๋ฐฉ๋ฒ•์— ๋”ฐ๋ผ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ํ’€ ์ˆ˜ ์žˆ๋Š”๋ฐ, ํ•˜๋‚˜๋Š” ๋ˆ„์  ํ•ฉ์ด๊ณ  ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ์ด๋ถ„ ํƒ์ƒ‰์ด๋‹ค.(1) ๋ˆ„์ ํ•ฉa. ๊ฒฐ๋ก  ๋จผ์ €1. "์„์ˆœ๊ณผ ์ข…์œ ์„ ์ž…๋ ฅ์„ ๋ถ„๋ฅ˜ํ•˜์—ฌ Y์ถ• ์œ„์น˜์— ๋”ฐ๋ฅธ ๊ฐ ์‚ฐ๋ฌผ์˜ ์œ„์น˜๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฐ์—ด ๊ตฌํ˜„"2. "๊ฐ ๋ฐฐ์—ด์˜ ๋ˆ„์ ํ•ฉ ๊ตฌํ•˜๊ธฐ (์„์ˆœ ๋ˆ„์ ํ•ฉ ๋ฐฐ์—ด์„ sum_S[i], ..
2024.12.19
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 16139 ์ธ๊ฐ„-์ปดํ“จํ„ฐ ์ƒํ˜ธ์ž‘์šฉ java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: ๊ตฌ๊ฐ„ ํ•ฉ๋ˆ„์ ํ•ฉ ๋ฐฐ์—ด S์—์„œ A~B ๊ตฌ๊ฐ„ ๋‚ด์˜ ๊ตฌ๊ฐ„ํ•ฉ์„ ๊ตฌํ•  ๊ฒฝ์šฐ ์–ด๋–ป๊ฒŒ ํ‘œํ˜„ํ–ˆ๋Š”๊ฐ€?S[B] - S[A-1] ์ด์˜€๋‹ค. A๊ฐ€ ๊ตฌ๊ฐ„๋‚ด์— ํ•ฉํ•ด์ง€๋„๋ก A-1๊นŒ์ง€์˜ ๊ตฌ๊ฐ„ํ•ฉ์„ ์ œ๊ฑฐํ–ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์›๋ฆฌ๋Š” ๊ตฌ๊ฐ„ ๋‚ด์— ์•ŒํŒŒ๋ฒณ์ด ๋ช‡ ๋ฒˆ ๋“ฑ์žฅํ•˜๋Š”๊ฐ€ ์ฐพ๋Š” ์ด๋ฒˆ ๋ฌธ์ œ์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.์œ„ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด, a๊ฐ€ A๊ตฌ๊ฐ„์—์„œ ํ•œ๋ฒˆ, B๊ตฌ๊ฐ„์—์„œ ํ•œ๋ฒˆ ๋‚˜์˜จ๋‹ค๊ณ  ํ•˜์ž. ๊ทธ๋Ÿฌ๋ฉด, S[A] = 1, S[B] = 2๊ฐ€ ๋  ๊ฒƒ์ด๋‹ค. ๊ตฌ๊ฐ„์„ ํ™•์ธํ•˜๋ฉด ๋ฌธ์ž์—ด์ด A์˜ ์œ„์น˜๋ฅผ ๋„˜์–ด์„œ์„œ B๊นŒ์ง€ ๊ตฌ๊ฐ„์„ ์ •ํ•˜๋Š” ์ˆœ๊ฐ„ a๋Š” ํ•œ๊ฐœ์ด๋‹ค. S[B]-S[A]๋Š” A+1 ~ B๊นŒ์ง€์˜ ๊ตฌ๊ฐ„ํ•ฉ์ž„์œผ๋กœ 2-1 = 1์ด ๋‚˜์˜จ๋‹ค. ๋ฐ˜๋ฉด S[B] - S[A-1]์€ A์˜ ์œ„์น˜๋ถ€ํ„ฐ B๊นŒ์ง€์˜ ๊ฑฐ๋ฆฌ์—์„œ a์˜ ๊ฐœ์ˆ˜์ž„์œผ๋กœ S[..
2024.12.12
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด
thumbnail
โค๏ธ [๋ฐฑ์ค€] 17425 ์•ฝ์ˆ˜์˜ ํ•ฉ java
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌf(n) = n์ด๋ž€ ์ˆซ์ž์˜ ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉg(n) = 1~n๊นŒ์ง€ ๊ฐ ์ˆซ์ž์˜ ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ ์ฆ‰ f(1) ~ f(n)์˜ ํ•ฉ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: ๋ˆ„์  ํ•ฉ, ์‹œ๊ฐ„ ๋ณต์žก๋„์— ๋Œ€ํ•œ ๊ฐf(n)์„ ๊ตฌํ•œ๋‹ค. (1~ 1000000 ๊นŒ์ง€ ์ „์ฒด ์ˆ˜์— ๋Œ€ํ•ด ๊ตฌํ•œ๋‹ค.)๋ชจ๋“  f(n) ๋ฐฐ์—ด์„ 1๋กœ ์ดˆ๊ธฐํ™” (1์€ ๋ฌด์กฐ๊ฑด ์•ฝ์ˆ˜์— ํฌํ•จ๋˜๋ฏ€๋กœ)f(ij) += i(i = 2 ~ 1000000๊นŒ์ง€ ๋ชจ๋‘ ์ˆœํšŒ, j = 1๋ถ€ํ„ฐ 1์”ฉ ์ฆ๊ฐ€ํ•จ. ์ฆ‰ `ij=i์˜ ๋ฐฐ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋ƒ„.`)g(n)์€ f(n)์˜ ๋ˆ„์ ์œผ๋กœ ๊ตฌํ•œ๋‹ค.๋‹ต์„ ์ถœ๋ ฅํ•œ๋‹ค.f(i*j) = i๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด, i์˜ ๋ฐฐ์ˆ˜์—๋Š” i๋ฅผ ๋ฌด์กฐ๊ฑด ๋”ํ•˜๊ณ  i๊ฐ€ 1~ 1000000๊นŒ์ง€ ๋ชจ๋“  ์ˆ˜๋ฅผ ์ˆœํšŒํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ ์ˆซ์ž๋งˆ๋‹ค ์ž์‹ ์˜ ์•ฝ์ˆ˜๋ฅผ ๋น ์ง์—†์ด ๋”ํ•  ์ˆ˜ ์žˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋‹ค..
2024.12.10
์•Œ๊ณ ๋ฆฌ์ฆ˜/๋ฌธ์ œ ํ’€์ด