user-img
Java 69
thumbnail
[JAVA] ArrayList<Integer>์—์„œ ์›ํ•˜๋Š” ์ˆซ์ž Value ์ง€์šฐ๊ธฐ
0. ๋“ค์–ด๊ฐ€๋ฉฐ...ํ•ด๋‹น ๊ธ€์€ ArrayList์—์„œ ์›ํ•˜๋Š” ์ˆซ์ž๋ฅผ ์ง€์šฐ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ธ€์ด๋‹ค. ArrayList.remove() ํ•จ์ˆ˜๋กœ ์ง€์šฐ๋ฉด ๋˜์ง€ ์•Š๊ฒ ๋ƒ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์ง€๋งŒ .remove(int i)๋ฅผ ๋„ฃ์œผ๋ฉด, remove์˜ ์˜ค๋ฒ„๋กœ๋”ฉ๋œ ํ•จ์ˆ˜ ์ค‘ ArrayList.remove(int index)๊ฐ€ ํ˜ธ์ถœ๋˜์–ด, i๋ฅผ index๋กœ ๊ฐ€์ง€๋Š” Value๋ฅผ ArrayList์—์„œ ์‚ญ์ œํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์›๋ž˜ ์˜๋„ํ•œ 'i๋ผ๋Š” Value ์ง€์šฐ๊ธฐ'๋Š” ์‹คํŒจํ•œ๋‹ค.1. ArrayList.remove(int index)์œ„์—์„œ ์„ค๋ช…ํ–ˆ๋“ฏ์ด remove์— ์›์‹œ ์ž๋ฃŒํ˜• int๋ฅผ ๋„ฃ์œผ๋ฉด ํ•ด๋‹น ์ธ์ˆ˜๋ฅผ index๋กœ ๊ฐ€์ง€๋Š” Value๋ฅผ ArrayList์—์„œ ์‚ญ์ œํ•œ๋‹ค.2. ArrayList.remove(Object o)์šฐ๋ฆฌ๊ฐ€ ์‹ค์ œ i๋ผ๋Š” Value๋ฅผ ์‚ญ..
2025.01.25
Language/Java
thumbnail
[JAVA] Long๋ณด๋‹ค ํฐ ์ˆ˜๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฒ•
0. ๋“ค์–ด๊ฐ€๋ฉฐ๊ฐœ๋ฐœ์„ ํ•˜๊ฑฐ๋‚˜, ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ ์ •์ˆ˜๋ก  ๊ด€๋ จ ๋ฌธ์ œ๋ฅผ ๋งŒ๋‚˜๋ฉด ํ•œ ๋ฒˆ์”ฉ ์ฃผ์–ด์ง€๋Š” ์ž…๋ ฅ์˜ ํฌ๊ธฐ๊ฐ€ Longํ˜•์„ ์ดˆ์›”ํ•  ์ˆ˜ ์žˆ์„ ๋•Œ๊ฐ€ ๊ฐ„ํ˜น ์žˆ๋‹ค. ๋จผ์ € ์ฝ”ํ…Œ์—์„œ ์ž์ฃผ ์“ฐ์ด๋Š” ์ž๋ฃŒํ˜•์ธ int์™€ Longํ˜•์˜ ์ตœ๋Œ€, ์ตœ์†Œ๊ฐ’์„ ์•Œ์•„๋ณด์ž.์ •์ˆ˜ํ˜• ํƒ€์ž…๋ฐ์ดํ„ฐ ํ‘œํ˜„ ๋ฒ”์œ„int-2,147,483,648 ~ 2,147,483,647 ($10^{10}$)long-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 ($10^{18}$)long์ด ์ •๋ง ๋งŽ์€ ์ˆ˜์˜ ๋ฒ”์œ„๋ฅผ ์ปค๋ฒ„ํ•  ์ˆ˜ ์žˆ์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋ฐฑ์ค€์˜ ๊ฑฐ์˜ ์†Œ์ˆ˜๊ฐ™์€ ๋ฌธ์ œ๋Š” ์ด๋Ÿฌํ•œ ์ž๋ฃŒํ˜•์„ ๋›ฐ์–ด๋„˜๋Š”๋‹ค. ์ด๋•Œ์˜ ๋Œ€์ฒ˜๋ฒ• 2๊ฐ€์ง€๋ฅผ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.1. ์‹ค์ˆ˜ ์ž๋ฃŒํ˜•์ธ Double ์‚ฌ์šฉ Double์€ 64bit ๋ถ€๋™ ์†Œ์ˆ˜์ ์œผ๋กœ ํ‘œํ˜„๋œ ์ž๋ฃŒํ˜•์œผ๋กœ..
2025.01.24
Language/Java
thumbnail
[JAVA] For ๋ฌธ ์ž‘๋™ ์ˆœ์„œ
0. ์ •๋ฆฌํ•˜๋Š” ์ด์œ ์ฝ”ํ…Œ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๊ฐ€ ๊ฐ‘์ž๊ธฐ ์ˆœ์„œ๊ฐ€ ํ—ท๊ฐˆ๋ ธ๋‹ค. ๊ทธ๋ž˜์„œ ์ •๋ฆฌํ•ด๋†”์•ผ ๊ฒ ๋‹ค1. For ๋ฌธ ์ž‘๋™ ์ˆœ์„œ1๏ธโƒฃ: ์ง€์—ญ ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐ ์ดˆ๊ธฐํ™” (ํ•ด๋‹น ๋ถ€๋ถ„์ด For๋ฌธ ๋ฐ–์— ์žˆ์–ด๋„ ๋œ๋‹ค. ๋‹ค๋งŒ ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด, for ๋ฌธ์ด ๋๋‚œ ๋’ค์—๋„ i ๊ฐ’์ด ์œ ์ง€๋œ๋‹ค.)2๏ธโƒฃ: ์ค‘์•™์˜ ์กฐ๊ฑด ์ฒดํฌ (์—ฌ๊ธฐ์„œ ๊ฑธ๋ฆฌ๋ฉด for๋ฌธ ๋‚ด์šฉ๋ฌผ์— ๋“ค์–ด๊ฐ€์ง€ ์•Š๊ณ  ๋ฐ”๋กœ for ๋ฌธ์ด ๋๋‚œ๋‹ค.)3๏ธโƒฃ: ๋‚ด์šฉ๋ฌผ ์ฒ˜๋ฆฌ4๏ธโƒฃ: i ํฌ๊ธฐ ์˜ฌ๋ฆฌ๊ธฐ5๏ธโƒฃ: ๋‹ค์‹œ ํ•œ ๋ฒˆ ๋” ์กฐ๊ฑด ์ฒดํฌ
2025.01.24
Language/Java
thumbnail
[JAVA] ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ค‘ ์‹ค์ˆ˜ํ•˜๊ธฐ ์‰ฌ์šด StringBuilder์˜ ์ƒ์„ฑ์ž
0. ๋ฌด์—‡์„ ์ •๋ฆฌํ•˜๋‚˜์š”ํ•„์ž๋Š” ๋ฌธ์ž์—ด์„ ๋’ค์ง‘๋Š” ๊ธฐ์ˆ ์ด ํ•„์š”ํ•  ๋•Œ, StringBuilderํด๋ž˜์Šค์˜ reverse()๋ฅผ ์ž์ฃผ ํ™œ์šฉํ•œ๋‹ค. ๊ทผ๋ฐ, ํŽ ๋ฆฐ๋“œ๋กฌ ์ˆ˜๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฌธ์ œ๋ฅผ ํ‘ธ๋‹ˆ ํ‹€๋ฆฌ๋Š” ๊ฒƒ ์•„๋‹Œ๊ฐ€! StringBuilder straight = new StringBuilder(num);StringBuilder reverse = new StringBuilder(num).reverse();์ฝ˜์†”์— ์ฐ์–ด๋ณด๋‹ˆ ๋‘ ๊ฐ์ฒด ๋ชจ๋‘์— ์–ด๋– ํ•œ ์ž…๋ ฅ๊ฐ’๋„ ๋“ค์–ด๊ฐ€์ง€ ์•Š์•˜๋‹ค! ์ฝ”ํ…Œ์—์„œ ์ด๋Ÿฌํ•œ ์—๋Ÿฌ๋ฅผ ๊ฒช์—ˆ์œผ๋ฉด ์ ์ž–์ด ๋‹นํ™ฉํ–ˆ์„ ๊ฒƒ ๊ฐ™๋‹ค. ์˜ค๋Š˜์€ ํ•„์ž์™€ ๊ฐ™์ด ๋‹นํ™ฉํ•  ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด, StringBuilder์˜ ์ƒ์„ฑ์ž์— int i๋ฅผ ๋„ฃ๋Š” ๊ฒƒ๊ณผ String str์„ ๋„ฃ๋Š” ๊ฒƒ์˜ ์ฐจ์ด๋ฅผ ์•Œ์•„๋ณด๋ ค ํ•œ๋‹ค.1. ne..
2025.01.24
Language/Java
thumbnail
ํ•ญํ•ด 99 ์ฝ”ํ…Œ ์Šคํ„ฐ๋”” 5๊ธฐ 8์ผ์ฐจ + [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv3 ์–‘๊ณผ ๋Š‘๋Œ€ java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช…๐Ÿ“Œ(1) ๋งํฌ๐Ÿ”—  ํ”„๋กœ๊ทธ๋ž˜๋จธ์ŠคSW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„programmers.co.kr (2) ์ฃผ๋ชฉ ํฌ์ธํŠธ ๐Ÿ•ต1๏ธโƒฃ ๋Š‘๋Œ€ >= ์–‘ ์ด๋ฉด ๋ชจ์•˜๋˜ ์–‘์˜ ๊ฐœ์ˆ˜๊ฐ€ 0์ด ๋œ๋‹ค!2๏ธโƒฃ ํ˜„์žฌ ํŠน์ •ํ•œ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ๋ฐฉ๋ฌธ ์ค‘์ด๋ผ ๊ฐ€์ •ํ•  ๋•Œ, ํ•ด๋‹น ํŠธ๋ฆฌ์—์„œ ์ตœ๋Œ€ ์ด์ต์„ ์ด๋ฏธ ๋ƒˆ๋‹ค๊ณ  ํ™•์‹ ํ•œ๋‹ค๋ฉด, ์กฐ์ƒ ๋…ธ๋“œ๋ฅผ ๊ฑฐ์Šฌ๋Ÿฌ ์˜ฌ๋ผ๊ฐ€ ๋‹ค๋ฅธ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํŒŒ๊ณ  ๋“œ๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.2. ์ƒ๊ฐ์˜ ํ๋ฆ„: ์ฝ”๋“œ๊ฐ€ ๋‚˜์˜ค๊ธฐ๊นŒ์ง€ ๐Ÿ—ƒ๏ธ(1) IDEA ๋„์ถœ๐Ÿ’กKEY WORD: BACK-TRACKING, DFSํ•ด์„ค์—์„œ ์„ค๋ช…ํ•œ 2๏ธโƒฃ๋ฒˆ์งธ ํฌ์ธํŠธ ๋•Œ๋ฌธ์—, ์ด๋ฒˆ ๋ฌธ์ œ๋Š” BACK-TRACKING์— ๊ฐ€๊น๊ฒŒ ๋ณ€ํ˜•๋œ DFS๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์„ ํ•˜๋Š” ์„ฑ์งˆ์€..
2025.01.22
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
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
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
99ํด๋Ÿฝ ์ฝ”ํ…Œ์Šคํ„ฐ๋”” 5๊ธฐ 5์ผ์ฐจ + [๋ฐฑ์ค€] 17270 ์—ฐ์˜ˆ์ธ์€ ํž˜๋“ค์–ด java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ์ง€ํ—Œ๊ณผ ์„ฑํ•˜์˜ ์ƒˆ๋กœ์šด ์•ฝ์† ์žฅ์†Œ๋ฅผ ์ฐพ์•„์ฃผ๋Š” ๋ฌธ์ œ๋กœ์„œ, ๋‹ค์ต์ŠคํŠธ๋ผ๋ฅผ ํ†ตํ•ด ๊ฐ์ž์˜ ์ถœ๋ฐœ์ ์—์„œ ๋ชจ๋“  ์ •์ ๊นŒ์ง€์˜ ์ตœ์†Œ ๋„๋‹ฌ ๋น„์šฉ์„ ๊ตฌํ•˜๊ณ , ์ด๋ฅผ ํ†ตํ•ด 4๊ฐ€์ง€ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์•ฝ์† ์žฅ์†Œ๋ฅผ ์ฐพ์œผ๋ฉด ๋œ๋‹ค.ํ•˜์ง€๋งŒ, ์ถœ์ œ์ž๊ฐ€ ์ง€๋ฌธ์„ ๋˜๊ฒŒ ๋ชจํ˜ธํ•˜๊ฒŒ ์ ์–ด์„œ, ์กฐ๊ฑด์˜ ์ง„์˜๊ฐ€ ํ—ท๊ฐˆ๋ฆฐ๋‹ค.์•ฝ์† ์žฅ์†Œ์˜ ์กฐ๊ฑด์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.1๏ธโƒฃ ๊ฐ์ž์˜ ์ถœ๋ฐœ์ ์€ ์•ฝ์† ์žฅ์†Œ๊ฐ€ ๋  ์ˆ˜ ์—†๋‹ค.2๏ธโƒฃ ๋‘˜ ๋‹ค ์ตœ์†Œ ๋น„์šฉ์œผ๋กœ ๋‹ฟ์„ ์ˆ˜ ์žˆ๋Š” ์žฅ์†Œ์—ฌ์•ผ ํ•œ๋‹ค.3๏ธโƒฃ ์ง€ํ—Œ์ด๊ฐ€ ์„ฑํ•˜๋ณด๋‹ค ๋จผ์ € ๋„์ฐฉํ•˜๋Š” ์žฅ์†Œ์—ฌ์•ผ ํ•œ๋‹ค.4๏ธโƒฃ ์œ„์˜ ์กฐ๊ฑด์„ ๋ชจ๋‘ ๋งŒ์กฑํ•˜๋Š” ์žฅ์†Œ๊ฐ€ ๋ณต์ˆ˜๋ผ๋ฉด, ๊ทธ ์ค‘ ์ง€ํ—Œ์ด๊ฐ€ ๋นจ๋ฆฌ ๋„์ฐฉํ•˜๋Š” ์žฅ์†Œ๋ฅผ ๊ณ ๋ฅธ๋‹ค. (์ด ๋งˆ์ €๋„ ๋ณต์ˆ˜์ด๋ฉด, ์ •์  ๋ฒˆํ˜ธ๊ฐ€ ๋น ๋ฅธ ๊ฒƒ์„ ๊ณ ๋ฅธ๋‹ค.)์ด ์กฐ๊ฑด์„ ๋ณด๋ฉด,๊ฐ์ž์˜ ์ถœ๋ฐœ์ ์ด ์•„๋‹ˆ๋ฉด์„œ, ์ง€ํ—Œ์ด๊ฐ€ ์„ฑํ•˜๋ณด๋‹ค ๋จผ์ € ๋„์ฐฉํ•˜๋ฉด์„œ..
2025.01.17
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
๊ธฐ์ˆ˜ ์ •๋ ฌ(radix sort), ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
1. ๊ธฐ์ˆ˜ ์ •๋ ฌ์ด๋ž€?์ˆ˜๋“ค์˜ ์ž๋ฆฟ๊ฐ’์„ ํ™œ์šฉํ•ด, ๋ฐ์ดํ„ฐ๋ฅผ ์ •๋ ฌํ•˜๋Š” ์ •๋ ฌ๋ฐฉ๋ฒ•(์ง€๊ธˆ๊นŒ์ง€ ๋ฐฐ์šด ์ •๋ ฌ๋“ค์€ ์ˆ˜ ๋“ค๊ฐ„์˜ ๋Œ€์†Œ ๊ด€๊ณ„๋ฅผ ๋น„๊ตํ•˜๋Š” ๋น„๊ต ์ •๋ ฌ์ด์—ˆ์ง€๋งŒ, ๊ธฐ์ˆ˜ ์ •๋ ฌ์€ ๋ฐ์ดํ„ฐ ๊ฐ„์˜ ๋Œ€์†Œ ๊ด€๊ณ„๋ฅผ ๋น„๊ตํ•˜์ง€ ์•Š์Œ.)์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” O(kn)์ด๋‹ค. ์—ฌ๊ธฐ์„œ K๋Š” ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ ์ค‘ ๊ฐ€์žฅ ํฐ ์ž๋ฆฟ๊ฐ’์„ ๋งํ•œ๋‹ค. ์ฝ”๋”ฉํ…Œ์ŠคํŠธ์—์„œ๋Š” ์ตœ๋Œ€๊ฐ’์ด 10์–ต์„ ๋„˜์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋“œ๋ฌผ๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์งˆ์ ์œผ๋กœ O(N)์˜ ์‹œ๊ฐ„์•ˆ์— ์ •๋ ฌ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์†Œ๋ฆฌ์ด๋‹ค.ํ•˜์ง€๋งŒ ๊ฐ•์ฒ ์˜ ์—ฐ๊ธˆ์ˆ ์‚ฌ์ฒ˜๋Ÿผ ๋“ฑ๊ฐ€๊ตํ™˜์˜ ์›์น™์ด๋‹ค. ํ•ด๋‹น ์ •๋ ฌ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์›๋ž˜๋Š” Queue๊ฐ€ 10๊ฐœ๊ฐ€ ํ•„์š”ํ•ด์„œ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋งŽ์ด ์žก์•„๋จน๋Š”๋‹ค. ์ด๋Ÿฌํ•œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ˆ„์ ํ•ฉ ๋ฐฐ์—ด์„ ์ด์šฉํ•œ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ์†Œ๊ฐœํ•˜๊ฒ ๋‹ค.2. ์›๋ฆฌ0. ์„ธํŒ…ํ˜„์žฌ ํ™•์ธ ์ค‘์ธ ์ž๋ฆฟ๊ฐ’์„ ๊ฐ€์ง„ ์ˆซ์ž๊ฐ€ ..
2024.12.31
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก 
thumbnail
Quick ์ •๋ ฌ, ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
1. Quick ์ •๋ ฌ์€ ๋ฌด์—‡์ธ๊ฐ€?Pivot(์ค‘์ถ”)๊ฐ€ ๋˜๋Š” ๊ฐ’์„ ํ•˜๋‚˜ ์„ ์ •ํ•ด์„œ ๊ทธ ๊ฐ’๋ณด๋‹ค ์ž‘์€ ๊ฐ’์€ ์™ผ์ชฝ์œผ๋กœ, ํฐ ๊ฐ’์€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ชจ์€๋‹ค. ์ด์ œ ๋‚˜๋ˆ ์ง„ ๋‘ ๊ทธ๋ฃน ๋‚ด์—์„œ ๋‹ค์‹œ Pivot์„ ์„ ์ •ํ•˜๊ณ  ์ด ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•œ๋‹ค. ๊ฐ’์„ ๋” ์ด์ƒ ์ชผ๊ฐค ์ˆ˜ ์—†์„ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋ฉด ๋ชจ๋“  ๊ฐ’์ด ์ •๋ ฌ๋˜์–ด ์žˆ๋‹ค.2. ์›๋ฆฌ๋ณ‘ํ•ฉ์ •๋ ฌ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ถ„ํ•  ์ •๋ณต์„ ํ™œ์šฉํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ์˜ˆ์‹œ์ด๋‹ค. ๋ณ‘ํ•ฉ ์ •๋ ฌ์—์„œ๋Š” ์„  ๋ถ„ํ•  ํ›„ ์ •๋ณต ์ด์—ˆ๋‹ค๋ฉด, quick ์ •๋ ฌ์€ ์„  ์ •๋ณต, ํ›„ ๋ถ„ํ•  ํ˜•์‹์ด๋ผ ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ฒ ๋‹ค.์ •๋ณต์—๋Š” ๋งˆ์ฃผ๋ณด๋Š” ํˆฌ ํฌ์ธํ„ฐ๊ฐ€ ํ™œ์šฉ๋œ๋‹ค. ์–ด๋–ป๊ฒŒ ์“ฐ์ด๋Š”์ง€๋Š” ๋ฐ‘์˜ ์˜ˆ์‹œ์—์„œ ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค. (1) Pivot ์ •ํ•˜๊ธฐ (์ •ํ•˜๋Š” ๋ฐฉ์‹์€ ๋•Œ์— ๋งž๊ฒŒ ์ž์œ )(2) Pivot๋ณด๋‹ค ํฐ ๊ฐ’์€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ชฐ๊ธฐ, ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ๊ฐ’์€ ์™ผ์ชฝ์œผ๋กœ ๋ชฐ๊ธฐ (์ •๋ณต by ํˆฌ ํฌ..
2024.12.31
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-์ด๋ก 
thumbnail
[Java] HashMap์—์„œ Custom Class๋ฅผ Key๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•, ๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ
0. ์•Œ์•„๋ณผ ๊ฒƒ1. Hash Map ์ด๋ž€? ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ ์Œ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ์ž๋ฃŒ๊ตฌ์กฐKEY๋ฅผ ํ™œ์šฉํ•ด HashMap์— VALUE์„ (์ €์žฅ, ์‚ญ์ œ, ์กฐํšŒ) ํ•˜๋Š”๋ฐ ํ‰๊ท  O(1)์˜ ์‹œ๊ฐ„์ด ๋“ ๋‹ค. ์Œ์„ ENTRY๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.KEY ๊ฐ’์€ ์ค‘๋ณต๋  ์ˆ˜ ์—†๊ณ , VALUE ๊ฐ’์€ KEY ๊ฐ’์ด ๋‹ค๋ฅด๋‹ค๋ฉด ์ค‘๋ณต์ €์žฅ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.2. HashMap ๋‚ด๋ถ€ ๊ตฌ์กฐHashMap์€ ํฌ๊ฒŒ HASH ํ•จ์ˆ˜์™€ Hash Bucket์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.Hash Bucket์€ ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ์žฅ์†Œ๋กœ Array๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ๋‹ค.Hash ํ•จ์ˆ˜๋Š” ์ž…๋ ฅ ๊ฐ’ ๋งˆ๋‹ค์˜ Hash ๊ฐ’์„ ๋ฐ˜ํ™˜ ํ•˜๋Š”๋ฐ, ํ•ด๋‹น Hash ๊ฐ’์€ Hash Bucket์˜ Index์ด๋‹ค. ๋”ฐ๋ผ์„œ Hash ํ•จ์ˆ˜๋Š” ์ž…๋ ฅ ๊ฐ’์ด ์ €์žฅ๋  ์œ„์น˜๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ๋„ค๋น„๊ฒŒ์ดํ„ฐ ์—ญํ• ์„ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ฒ ๋‹ค.์ด์ œ ์‹ค์ œ ์ž…๋ ฅ๊ฐ’..
2024.12.31
Language/Java
thumbnail
[๋ฐฑ์ค€] 1517 ๋ฒ„๋ธ” ์†ŒํŠธ java ํ’€์ด (๊ทธ๋ฆผ์œผ๋กœ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ธฐ)
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ1์ฐจ์› ๋ฐฐ์—ด์ด ์ฃผ์–ด์ง€๊ณ , ํ•ด๋‹น ๋ฐฐ์—ด์„ ๋ฒ„๋ธ” ์ •๋ ฌ๋กœ ์ •๋ ฌํ•œ๋‹ค๊ณ  ํ–ˆ์„๋•Œ, ์ „์ฒด ๊ณผ์ • ์ค‘์—์„œ swap์€ ๋ช‡ ๋ฒˆ ์ผ์–ด๋‚ฌ๋Š”์ง€ ๊ตฌํ•˜๋ผ.2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKey Word: Merge_sort, Two Pointer๋ถ„ํ•  ์ •๋ณต, ํˆฌ ํฌ์ธํ„ฐ๋ฅผ ํ™œ์šฉํ•ด ์ž…๋ ฅ์— ๋Œ€ํ•ด ๋ณ‘ํ•ฉ ์ •๋ ฌ์„ ์‹คํ–‰ํ•œ๋‹ค.๋งค ์žฌ๊ท€ ์ˆœ๊ฐ„๋งˆ๋‹ค ์ •๋ ฌ์ด ๋ ํ…๋ฐ, ์ด๋•Œ ์ž๋ฆฌ ๋ฐ”๊ฟˆ์ด ์ผ์–ด๋‚œ ํšŸ์ˆ˜๋ฅผ ์„ผ๋‹ค.์œ„์˜ ๊ณผ์ •์—์„œ ๊ตฌํ•œ ์ž๋ฆฌ ๋ฐ”๊ฟˆ ํšŸ์ˆ˜๋ฅผ ๋ˆ„์ ํ•ด ์ถœ๋ ฅํ•œ๋‹ค.์ „์ฒด ๊ณผ์ •์„ ๊ฐ„๋žตํžˆ ์„ค๋ช…ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.(1) ์ง€๊ธˆ๋ถ€ํ„ฐ ๋ณ‘ํ•ฉ ์ •๋ ฌ์ด ๋ฌด์—‡์ธ์ง€,(2) ๋ฒ„๋ธ” ์ •๋ ฌ๋กœ ์ •๋ ฌํ•˜๋ผ ํ–ˆ๋Š”๋ฐ ์™œ ๋ณ‘ํ•ฉ ์ •๋ ฌ์„ ์‚ฌ์šฉํ•˜๊ณ  ๊ทธ๊ฒƒ์ด ํ†ตํ•˜๋Š”์ง€,(3) ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•˜๋ฉด ๋˜๋Š”์ง€์„ธ์„ธํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.(1) ๋ณ‘ํ•ฉ ์ •๋ ฌ์ด ๋ฌด์—‡์ธ์ง€๋ณ‘ํ•ฉ์ •๋ ฌ์€ ๋ถ„ํ•  ์ •๋ณต๊ณผ ํˆฌ ํฌ์ธํ„ฐ๋ฅผ ํ™œ์šฉํ•ด ๊ฐ’๋“ค์„ ์ •๋ ฌํ•˜๋Š”..
2024.12.28
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 2003 ์ˆ˜๋“ค์˜ ํ•ฉ2 ์‰ฌ์šด ํ’€์ด java ^^
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: one-way Two pointer๋‹จ๋ฐฉํ–ฅ ํˆฌ ํฌ์ธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ „ํ˜•์ ์ธ ๋ฌธ์ œ์ด๋‹ค. ์™ผ์ชฝ ํฌ์ธํ„ฐ(L)๊ณผ ์˜ค๋ฅธ์ชฝ ํฌ์ธํ„ฐ(R)์„ ๋‘”๋‹ค. ํ•ด๋‹น ๊ตฌ๊ฐ„ ๋‚ด ์ˆ˜๋“ค์˜ ํ•ฉ์„ sum์ด๋ผ ํ•˜๊ฒ ๋‹ค.sum : R ํฌ์ธํ„ฐ๋ฅผ ์ „์ง„์‹œํ‚จ๋‹ค.sum >= M: L ํฌ์ธํ„ฐ๋ฅผ ์ „์ง„์‹œํ‚จ๋‹ค. (๋งŒ์•ฝ sum == M์ด๋ฉด ๋‹ต์ด ๋˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ +1 ์˜ฌ๋ฆฐ๋‹ค.)๊ตฌ๊ฐ„ ๋‚ด์˜ ํ•ฉ์€ ๊ตฌ๊ฐ„ ๋‚ด์˜ ๊ฐ’์ด ์›์†Œ ํ•˜๋‚˜์ธ ๊ฒฝ์šฐ๋„ ํฌํ•จํ•œ๋‹ค. ๋”ฐ๋ผ์„œ arr[0] == M ์ธ ๊ฒฝ์šฐ๋„ ์˜ˆ์™ธ ์—†์ด ๊ณ„์‚ฐ์— ํฌํ•จ๋˜๋„๋ก ํ•ด์ค˜์•ผ ํ•œ๋‹ค.๋‚˜๋Š” 3๋ฒˆ์˜ ๊ทœ์น™์„ ์ง€ํ‚ค๊ธฐ ์œ„ํ•ด ๋ฐฐ์—ด์„ N+1๋กœ ๋งŒ๋“ค์–ด ๊ฐ’๋“ค์„ 1๋ถ€ํ„ฐ ์ฑ„์šฐ๊ณ , ํฌ์ธํ„ฐ๋“ค์€ 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋„๋ก ํ•˜์˜€๋‹ค.3. ์ฝ”๋“œ ์†Œ๊ฐœ ๐Ÿ”Žimport java.io.*;import java..
2024.12.23
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 11003 ์ตœ์†Œ๊ฐ’ ์ฐพ๊ธฐ java ํ’€์ด (๊ทธ๋ฆผ์œผ๋กœ ์‰ฌ์šด ์„ค๋ช… ^^)
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ์—์„œ ๋” ๋‚˜์•„๊ฐ€์„œ, ์œˆ๋„์šฐ ๊ตฌ๊ฐ„์•ˆ์— ์ตœ์†Œ๊ฐ’์„ ๋งค๋ฒˆ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: Sliding Window, Data Structure (Deque)ํŒŒ์ด์ฌ์—์„œ๋Š” ์ถ”๊ฐ€์‹œ๊ฐ„์ด ์ฃผ์–ด์ค˜์„œ ์šฐ์„ ์ˆœ์œ„ ํ๋ฅผ ์ด์šฉํ•ด๋„ ํ’€๋ฆฌ์ง€๋งŒ, Java์—์„œ๋Š” ํ’€๋ฆฌ์ง€ ์•Š๋Š”๋‹ค. ์™œ ์šฐ์„ ์ˆœ์œ„ ํ๋กœ๋Š” ์•ˆ๋˜๋Š”์ง€์— ๋Œ€ํ•ด 4๋ฒˆ ํ•ญ๋ชฉ์—์„œ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.(1) ์ „์ฒด ์ ‘๊ทผ ๋ฐฉ์‹ArrayDeque๋กœ ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ๋ฅผ ๊ตฌํ˜„ํ•œ๋‹ค.(ํ•ด๋‹น deque๋Š” ํ˜„์žฌ ๊ตฌ๊ฐ„์ธ ๊ฐ’๋“ค๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ, ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๊ฐ’์˜ ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•œ๋‹ค. (front = ์ตœ์†Œ๊ฐ’))์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ๋ฅผ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ์”ฉ ์›€์ง์ธ๋‹ค.๊ตฌ๊ฐ„์— ์‹ ๊ทœ๋กœ ์ถ”๊ฐ€๋  ๊ฐ’์„ A๋ผ๊ณ  ์ณค์„ ๋•Œ, A์™€ deque์˜ rear(๊ผฌ๋ฆฌ)๋ฅผ ๋น„๊ตํ•œ๋‹คrear > A:..
2024.12.21
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
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
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
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
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค Lv1 ์ง€ํ ์ ‘๊ธฐ ํ’€์ด java
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: SIMULATION3. ์ฝ”๋“œ ์†Œ๊ฐœ ๐Ÿ”Žimport java.util.*;class Solution { public int solution(int[] wallet, int[] bill) { int answer = 0; Arrays.sort(wallet); Arrays.sort(bill); while(wallet[0] 4. ๋ฐฐ์šด ๊ฒƒ๋“ค ๐ŸŽฏ์—†์Œ. ๊พธ์ค€ํ•จ์„ ์œ„ํ•œ ์žฌ๋ฌผ
2024.11.28
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv2 ์š”๊ฒฉ์‹œ์Šคํ…œ java ์‰ฌ์šด ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ์„ค๋ช…๋ฌธ์ œ ์„ค๋ช… ์ƒ๋žต2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: GREEDY ALGORITHMGreedy ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋งค ์„ ํƒ์˜ ์ˆœ๊ฐ„์— ๋‹น์‹œ ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์„ ์˜ ์„ ํƒ์„ ํ•˜๋Š” ๊ฒƒ์ด ์ „์ฒด ๋ฌธ์ œ์—์„œ๋„ ์ตœ์ ์˜ ํ•ด๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒƒ์ž„์„ ๊ฐ€์ •ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.์—ฌ๊ธฐ์„œ๋Š” ๋ฏธ์‚ฌ์ผ์˜ ๋ฌถ์Œ์„ ๋์ง€์  ๊ธฐ์ค€ ์˜ค๋ฆ„ ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ , ๋ฏธ์‚ฌ์ผ ๋ฌถ์Œ์˜ ์ตœ๋Œ€ํ•œ ๋์ง€์ ์—์„œ ์ฐจ๋ก€๋Œ€๋กœ ์š”๊ฒฉํ•ด ๋‚˜๊ฐ€๋ฉด ์ตœ์†Œํ•œ์œผ๋กœ ์š”๊ฒฉ ๋ฏธ์‚ฌ์ผ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ํ•ด๋‹น ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ ๋กœ ์œ ํšจํ•˜๋‹ค.๋ฏธ์‚ฌ์ผ์„ ๋งŒ๋‚˜๋ฉด ๋ฌด์กฐ๊ฑด ์š”๊ฒฉํ•ด์•ผ ํ•œ๋‹ค. ์•ˆํ•˜๊ณ  ์ง€๋‚˜์น˜๋Š” ๊ฒฝ์šฐ๋Š” ์—†๋‹ค.๋”ฐ๋ผ์„œ ๋ฏธ์‚ฌ์ผ์„ ๋งŒ๋‚˜๋ฉด ์ตœ๋Œ€ํ•œ ๊ฒน์น˜๊ฒŒ ์‚ญ์ œํ•ด์•ผ ํ•œ๋‹ค.ํ•˜๋‚˜์˜ ๋ฏธ์‚ฌ์ผ ๋ฌถ์Œ A๊ฐ€ ๋‹ค๋ฅธ ๋ฏธ์‚ฌ์ผ ๋ฌถ์Œ๊ณผ ์ตœ๋Œ€ํ•œ ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ๋Š” A์˜ ๋์ง€์ ์—์„œ๋งŒ ๋ฐœ์ƒํ•œ๋‹ค.์˜ˆ๋ฅผ ๋“ค์–ด๋ณด๊ฒ ๋‹ค.๋‹ค์Œ๊ณผ ๊ฐ™์ด ํญ๊ฒฉ ๋ฏธ์‚ฌ..
2024.11.12
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv2 ์•„๋‚ ๋กœ๊ทธ ์‹œ๊ณ„ java ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ํ’€์ด!
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ์•„๋‚ ๋กœ๊ทธ ์‹œ๊ณ„์˜ ์ดˆ์นจ์ด ์‹œ์นจ ํ˜น์€ ๋ถ„์นจ๊ณผ ๊ฒน์น  ๋•Œ๋งˆ๋‹ค ์•Œ๋žŒ์„ ์šธ๋ฆด ๊ฑด๋ฐ, ์ฃผ์–ด์ง„ ์‹œ์ž‘ ์‹œ๊ฐ„๋ถ€ํ„ฐ ๋์‹œ๊ฐ„ ๋‚ด์— ์•Œ๋ฆผ์ด ๋ช‡ ๋ฒˆ ์šธ๋ ธ๋Š”์ง€ ํšŸ์ˆ˜๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฌธ์ œ. ์‹œ๊ณ„์˜ ์ดˆ,๋ถ„,์‹œ์นจ์€ ์—ฐ์†์ ์œผ๋กœ ์›€์ง์ธ๋‹ค. ๋”ฐ๋ผ์„œ ๊ฒน์น˜๋Š” ์‹œ๊ธฐ๊ฐ€ 0.001์ดˆ ๋‹จ์œ„์ผ ์ˆ˜๋„, 0.00001์ดˆ ๋‹จ์œ„์ผ์ˆ˜๋„ ์žˆ๋‹ค. ์ด๋ฅผ ๋‹ค ์ƒ๊ฐํ•ด์„œ ๊ฒน์น˜๋Š” ํšŸ์ˆ˜๋ฅผ ๊ตฌํ•ด๋ผ! (Lv2 ๋งž๋‚˜?? Lv3๋กœ ๊ฒฉ์ƒํ•ด์•ผํ•  ๋“ฏ...)2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: SIMULATION์‹œ๊ณ„ ์นจ๋“ค์˜ ๊ฒน์นจ ํ˜„์ƒ์„ ์ตœ๋Œ€ํ•œ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•ด์•ผ ํ•œ๋‹ค. ํ•˜์ง€๋งŒ ์—ฐ์†์ ์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋Š” ์›€์ง์ž„ ์†์—์„œ ๊ฒน์น˜๋Š” ์ˆœ๊ฐ„์„ ํฌ์ฐฉํ•œ๋‹ค๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•œ ์ผ์ด๋‹ค. ๋”ฐ๋ผ์„œ ๊ฒน์นœ๋‹ค์˜ ๊ธฐ์ค€์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •ํ•œ๋‹ค.(1) ๊ฒน์นœ๋‹ค์˜ ๊ธฐ์ค€๊ฐ๋„ ์ƒ ์ดˆ์นจ์ด ์‹œ์นจ ํ˜น์€ ๋ถ„์นจ๋ณด๋‹ค..
2024.11.10
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 1931 ํšŒ์˜์‹ค ๋ฐฐ์ • ์‰ฌ์šด ํ’€์ด ^^
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌํšŒ์˜์‹œ๊ฐ„์˜ ์‹œ์ž‘๊ณผ ๋์ด ์ฃผ์–ด์งˆ ๋•Œ, ์ตœ๋Œ€ํ•œ ๋งŽ์€ ๊ฐ•์˜๋ฅผ ํšŒ์˜์‹ค์— ๋ฐฐ์ •ํ•ด๋ผ (A ๊ฐ•์˜์˜ ๋์‹œ๊ฐ„๊ณผ B ๊ฐ•์˜์˜ ์‹œ์ž‘ ์‹œ๊ฐ„์ด ๊ฐ™์œผ๋ฉด ์—ฐ๋‹ฌ์•„ ๋ฐฐ์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•œ๋‹ค.) 2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORDS: GREEDY ALGORITHMGreedy Algorithm์€ ์„ ํƒ์˜ ์ˆœ๊ฐ„์— ์ตœ์ ์˜ ์„ ํƒ์ง€๋ฅผ ๊ณ ๋ฅด๋Š” ๊ฒƒ์ด ์ „์ฒด ๋ฌธ์ œ์—์„œ ์ตœ์ ์˜ ์„ ํƒ์„ ํ•˜๋Š” ๊ฒƒ์ด๋ผ ๊ฐ€์ •ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค.๋นจ๋ฆฌ ๋๋‚˜๋Š” ์ˆœ์œผ๋กœ ํšŒ์˜๋ฅผ ์ •๋ ฌ์ œ์ผ ๋นจ๋ฆฌ ๋๋‚˜๋Š” ํšŒ์˜๊ฐ€ A๋ผ๋ฉด A ํšŒ์˜ ์ดํ›„์— ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์œผ๋ฉด์„œ๋„, ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ๋๋‚˜๋Š” ํšŒ์˜๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ์ „์ฒด ๋ฌธ์ œ์—์„œ ๋ดค์„ ๋•Œ ์ตœ๋Œ€ํ•œ ๋งŽ์€ ๊ฐ•์˜๋ฅผ ๊ณ ๋ฅผ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ž„.2๋ฒˆ์„ ๋ชจ๋“  ํšŒ์˜๋ฅผ ๋Œ์•„๋ณด๋ฉฐ ๋” ์ด์ƒ ๊ณ ๋ฅผ ์ˆ˜ ์žˆ๋Š” ํšŒ์˜๊ฐ€ ์—†์„ ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต 3. ์ฝ”๋“œ ์†Œ๊ฐœ ๐Ÿ”Ž..
2024.11.09
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 1744 ์ˆ˜ ๋ฌถ๊ธฐ java ์‰ฌ์šด ํ’€์ด^^
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ๋ฌธ์ œ์—์„œ ์ˆ˜์—ด์ด ์ฃผ์–ด์ง€๋Š”๋ฐ, ์ˆ˜์—ด์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ชจ๋‘ ๋”ํ•ด์ง„๋‹ค. ํ•˜์ง€๋งŒ ๋งŒ์•ฝ ์‚ฌ์šฉ์ž๊ฐ€ ์ž„์˜์˜ ์ˆ˜ 2๊ฐœ๋ฅผ ๊ณจ๋ผ์„œ ๊ด„ํ˜ธ๋ฅผ ์ณค์„ ๊ฒฝ์šฐ, ํ•ด๋‹น ์ˆ˜๋Š” ๊ณฑํ•ด์ง„๋‹ค. ๋ชจ๋“  ์ˆ˜๋Š” ๋‹จ ํ•˜๋‚˜์˜ ๊ด„ํ˜ธ์— ํฌํ•จ๋˜๊ฑฐ๋‚˜ ์•„๋‹ˆ๋ฉด ๊ด„ํ˜ธ์— ์•„์˜ˆ ํฌํ•จ๋˜์ง€ ์•Š๋Š” 2๊ฐ€์ง€ ์„ ํƒ์ง€๋ฐ–์— ์—†๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ, ์ˆ˜์—ด๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€๊ฐ’์„ ๊ตฌํ•˜๋ผ.์˜ˆ๋ฅผ ๋“ค์–ด ์ˆ˜์—ด์ด [0,1,2,4,3,5]๋กœ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ด„ํ˜ธ๊ฐ€ ์—†๋‹ค๋ฉด ํ•ฉ์€ 15์ด์ง€๋งŒ, ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ด„ํ˜ธ๋ฅผ ํ™œ์šฉํ•˜๋ฉด 0 + 1 + (2*3) + (4*5) ๊ฐ€ ๋˜๋ฉด ๊ฐ’์ด 27๋กœ ์ตœ๋Œ€๊ฐ€ ๋œ๋‹ค.2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEYWORD: GREEDY ALGORITHM(1) ๊ฒฝ์šฐ์˜ ์ˆ˜ ์ƒ๊ฐํ•˜๊ธฐ๋จผ์ € ์ฃผ์–ด์ง„ ๋‘ ๊ฐœ์˜ ์ˆ˜๋กœ ์ตœ๋Œ€๊ฐ’์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ๋Š” ๋ฌด์—‡์ด ์žˆ์„๊นŒ?๋‘ ์ˆ˜ ๋ชจ๋‘ 0๋ณด๋‹ค ํด ๋•Œ: ์ด..
2024.11.08
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด
thumbnail
[๋ฐฑ์ค€] 11047 ์‹ค๋ฒ„4 ๋™์ „0 java ํ’€์ด
1. ๋ฌธ์ œ ์„ค๋ช… ๐Ÿ“Œ๋ฌธ์ œ ๋งํฌ์„ค๋ช…์ด ์ง๊ด€์ ์ด๋ผ ์ถ”๊ฐ€ ์„ค๋ช… ์ƒ๋žต2. ์ ‘๊ทผ ๋ฐฉ์‹ ๐Ÿ—ƒ๏ธKEY WORD: Greedy Algorithm๋™์ „ ์ˆ˜๊ฐ€ ๋ฌดํ•œํ•˜๊ธฐ ๋•Œ๋ฌธ์— Greedy ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ ์šฉํ•˜๋ฉด ๋œ๋‹ค. Greedy ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋งค ์ˆœ๊ฐ„ ์ตœ์ ์˜ ์„ ํƒ์„ ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ์ตœ์ ์˜ ์„ ํƒ์€ ๊ฐ€๋Šฅํ•œํ•œ ํฐ ๋‹จ์œ„์˜ ๋™์ „์„ ์‚ฌ์šฉํ•˜์—ฌ ๋™์ „ ๊ฐœ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋™์ „ ๋‹จ์œ„๋ฅผ ํ•˜๋‚˜์”ฉ ํ›‘์œผ๋ฉฐ, K์›์„ ์ตœ๋Œ€ํ•œ ํฐ ๋‹จ์œ„์˜ ๋™์ „์œผ๋กœ ์ฐจ๊ฐํ•œ๋‹ค.๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ๋™์ „ ์กฐํšŒ๋งŒ์•ฝ ํ˜„์žฌ ์กฐํšŒ ์ค‘์ธ ๋™์ „์œผ๋กœ K์›์„ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค๋ฉด? ๋‚˜๋ˆˆ ๋ชซ๋งŒํผ ๋™์ „์„ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ž„์œผ๋กœ ๋ชซ์„ ๋‹ต์— ๋ˆ„์ ์‹œํ‚ดK์›์€ (ํ•ด๋‹น ๋™์ „์˜ ๋‹จ์œ„ x ๋ชซ) ๋งŒํผ ์ฐจ๊ฐ๋˜์—ˆ์œผ๋ฏ€๋กœ, ๋‚˜๋จธ์ง€๋งŒํผ๋งŒ ๋‚จ์•„์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ K = K%๋‹จ์œ„๋กœ ๊ฐฑ์‹ ํ•œ๋‹ค.1,2,3๋ฒˆ์„ K ==..
2024.11.08
CodingTest/์•Œ๊ณ ๋ฆฌ์ฆ˜-ํ’€์ด