๊ฐ๋ฐ์ ์ทจ์
69
[๋ฐฑ์ค] 1939 ์ฉ๋์ ํ java, ๊ทธ๋ฆผ์ผ๋ก ์ฝ๊ฒ ์ดํดํ๊ธฐ
1. ๋ฌธ์ ์ค๋ช
๐๋ฌธ์ ๋งํฌ๊ฐ์ค์น ์๋ฐฉํฅ ๊ทธ๋ํ๊ฐ ์ฃผ์ด์ง ๋, ์ถ๋ฐ์ง์์ ๋์ฐฉ์ง ๊น์ง ํ๋ฒ์ ์ด๋์ผ๋ก ๊ฐ์ ธ๊ฐ ์ ์๋ ๋ฌผ๊ฑด์ ์ต๋ ์ค๋์ ๊ตฌํ์ฌ๋ผ.2. ์ ๊ทผ ๋ฐฉ์ ๐๏ธKEY WORD: Parametric Search, Binary_Search,DFS(1) ๊ฐ์ค์น ์๋ฐฉํฅ ๊ทธ๋ํ๋ฅผ ์ธ์ ๋ฆฌ์คํธ๋ก ๊ตฌํํ๋ค.(2) ์ด๋ถํ์์ ํ์ฉํด, ํ๋ฒ์ ์ฎ๊ธธ ์ ์๋ ๋ฌผ๊ฑด์ ์ต๋ ์ค๋์ ๊ตฌํ๋ค. (์ด๋ถ ํ์์ ๋ค์๊ณผ ๊ฐ์ด ์งํ ๋๋ค.)a. ๋ฌธ์ ์์ ์ฃผ์ด์ง ์ต๋ ์ค๋๊ณผ ์ต์ ์ค๋์ ํ์ฉํด ์ค์๊ฐ์ ๊ตฌํ๋ค.b. ํด๋น ์ค์๊ฐ์ ํ ๋ฒ์ ์ฎ๊ธธ ์ ์๋ ์ต๋ ์ค๋์ด๋ผ ์ณค์ ๋, ๋์ฐฉ์ง๊น์ง ์ฎ๊ธฐ๋ ๊ฒ ๊ฐ๋ฅํ์ง ํ์ธํ๋ค.c-1. ๊ฐ๋ฅํ๋ค๋ฉด ์ต์ ์ค๋์ ํ ์ค์๊ฐ + 1 ์ฌ๋ ค์, ๋ค์์ ๊ตฌํ ์ค์๊ฐ์ ์ํฅ ์กฐ์ ํ๋ค.c-2 .๋ถ๊ฐ๋ฅํ๋ค..
2025.01.11
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[๋ฐฑ์ค] 2957 ์ด์ง ํ์ ํธ๋ฆฌ java, ์ดํดํ๊ธฐ
1. ๋ฌธ์ ์ค๋ช
๐๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ ๋ฐฉ์ ๐๏ธKEY WORD: BLACK-RED TREE, BST(Binary_Search_Tree)(0) BLACK-RED TREE ๋ก ๊ตฌํ๋ TreeSet์ ํ์ฉํ๋ค.์ผ๋ฐ BST์ผ ๋์ Depth๋ฅผ ์ ์ฅํ๋ int [] depth ๋ฐฐ์ด๋ ๋ง๋ ๋ค.(1) TreeSet์ 0๊ณผ N-1์ ๋ฃ๋๋ค. (Null Pointer Exception ๋ฐฉ์ง)depth[0]๊ณผ depth[N-1] ์ ๊ฐ์ -1์ ๋ฃ๋๋ค. (๊ณ์ฐ์ ์ํฅ์ ์ฃผ์ง ์๊ธฐ ์ํจ)(2) TreeSet์ root ๋
ธ๋๋ถํฐ ๋๋
ธ๋๊น์ง ์ฐจ๋ก๋ก ์กฐํํ๋ค.์กฐํํ์ ๋น์์ ํด๋น ๋
ธ๋๋ณด๋ค ์์ผ๋ฉด์ ์ต๋๊ฐ๊ณผ ํฌ๋ฉด์ ์ต์๊ฐ์ธ ๋
ธ๋๊ฐ ๋ฌด์์ธ์ง ๊ตฌํ๋ค.(3) depth[ํ์ฌ ๋
ธ๋] = (2)์์ ๊ตฌํ ๋ ์ค depth ๊ฐ์ด ๋ ํฐ ..
2025.01.11
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[๋ฐฑ์ค] 2512 ์์ฐ java ํ์ด
1. ๋ฌธ์ ์ค๋ช
๐๋ฌธ์ ์ค๋ช
2. ์ ๊ทผ ๋ฐฉ์ ๐๏ธKEY WORD : Binary Search, Parametric Search(1) ๋ชจ๋ ์ง๋ฐฉ ์์ฐ์ ํฉ ์ด ์์ฐ, ๊ทธ๋๋ก ์์ฐ ์ฑ
์ ํ๊ณ , ์ ์ผ ์ปธ๋ ์ง๋ฐฉ ์์ฐ์ ์ถ๋ ฅ(2) ๋ชจ๋ ์ง๋ฐฉ ์์ฐ์ ํฉ > ์ด ์์ฐ: ์์ฐ ์ต์๊ฐ๊ณผ ์ต๋๊ฐ ์ฌ์ด์์ ์ด๋ถ ํ์์ ํตํด, ๋ชจ๋ ์์ฐ์ ์ฒ๋ฆฌํ๋ฉด์ ์ต๋์ธ ๊ฐ์ ์ฐพ์์ ์ถ๋ ฅ (1) Parametric Search ์ฐ์ธ ๊ณณ๋ชจ๋ ์์ฐ์ ์ฒ๋ฆฌํ ์ ์๋ ์ต๋๊ฐ ๊ตฌํ๊ธฐ โf(d) = ์์ฐ ์ํ์ก์ด d์ผ ๋, ์ด๊ฑธ๋ก ์ด ์์ฐ M ๋ด์์ ์ ๋ถ ์ฒ๋ฆฌ ๊ฐ๋ฅํ๊ฐ? ์ฌ๋ฌ ๊ฐ์์ ๊ฐ์ด ์ต์ ํ ๋ฌธ์ ๋ฅผ ๊ฒฐ์ ๋ฌธ์ ์ฌ๋ฌ๊ฐ๋ก ๋ฐ๊พธ์ด ํผ๋ค.f(d) = true๊ฐ ๋์ค๋ ๊ฐ ์ค ์ต๋ํ ์ค๋ฅธ์ชฝ์ ์๋ ๊ฐ์ ๊ตฌํ๋ฉด ๋ต์ด๋ค. (์ฆ f(d) = true๊ฐ..
2025.01.10
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[๋ฐฑ์ค] 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
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
์ฌ๋ผ์ด๋ฉ ๋จ์กฐ ํ, ๊ทธ๋ฆผ์ผ๋ก ์ฝ๊ฒ ์ดํดํ๊ธฐ
1. ์ฌ๋ผ์ด๋ฉ ๋จ์กฐ ํ๋ ๋ฌด์์ธ๊ฐ์?์ฌ๋ผ์ด๋ฉ ๋จ์กฐ ํ๋, DECK์ ํ์ฉํด ๊ตฌํํ ์ฌ๋ผ์ด๋ฉ ์๋์ฐ๋ก, ์ฌ๋ผ์ด๋ฉ ์๋์ฐ ๊ตฌ๊ฐ ๋ด์ ์ต์๊ฐ, ์ต๋๊ฐ์ O(1)์ ์ฐพ๊ธฐ ์ํด ๊ณ ์ํ ๊ตฌํ์ฒด์ด๋ค. ๋จ์กฐ๋ผ๋ ์ด๋ฆ์ด ๋ถ์ ์ด์ ๋, ๊ตฌ๊ฐ ๋ด ์ต์๊ฐ์ ์ฐพ๊ณ ์ถ์ ๊ฒฝ์ฐ, Deck ๋ด๋ถ ์์๋ค์ด ์ค๋ฆ์ฐจ์์ผ๋ก ์ ์ง๋๊ณ , ๊ตฌ๊ฐ ๋ด ์ต๋๊ฐ์ด ์ฐพ๊ณ ์ถ์ ๊ฒฝ์ฐ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ์ง๋๊ธฐ ๋๋ฌธ์ด๋ค.์ฌ์ค ๋ด๊ฐ ๋ง๋ ์ด๋ฆ์ด๋ค...๐์ฌ๋ผ์ด๋ฉ ์๋์ฐ ์ฌํ ๋ฌธ์ ๋ฅผ ํ๋ฉด์, ์ฌ๋ผ์ด๋ฉ ์๋์ฐ๋ฅผ Deck์ผ๋ก ๊ตฌํํ ํํ๊ฐ ๊พธ์คํ ๋์ค๋๋ฐ, ์ธํฐ๋ท ์ฌ๊ธฐ ์ ๊ธฐ ์ฐพ์๋ด๋, ํํ๋ง ์์ ๋ฟ ์ด๊ฒ์ ์ ๋๋ก ๋ ์ด๋ฆ์ด ์์๋ค.๋ฐ๋ผ์ ์ ์ ๋ช
์นญ์ ์๋์ง๋ง! ์ค๋ช
์ ํธ์๋ฅผ ์ํด ์์ผ๋ก ํ ๊ตฌ๊ฐ ๋ด์ ์ต์๊ฐ๊ณผ ์ต๋๊ฐ์ ์ฐพ๊ธฐ ์ํด Deck์ผ๋ก ๊ตฌํํ ์ฌ๋ผ์ด๋ฉ ์๋์ฐ๋ฅผ ..
2025.01.07
์๊ณ ๋ฆฌ์ฆ/์๊ณ ๋ฆฌ์ฆ-์ด๋ก
๊ทธ๋ํ ํ์ ๊ธฐ๋ณธ(DFS&BFS), ๊ทธ๋ฆผ์ผ๋ก ์ฝ๊ฒ ์ดํดํ๊ธฐ
0. ๊ทธ๋ํ ํ์์ ๊ธฐ๋ณธ์ธ DFS์ BFS๊ทธ๋ํ ํ์์ด๋ ๋ฌด์์ธ๊ฐ?๊ทธ๋ํ ํ์์ด๋, ์ ์ ๊ณผ ๊ฐ์ ์ผ๋ก ์ด๋ฃจ์ด์ง ๊ทธ๋ํ์์ ํน์ ์ ์ ์ ์ ํํ๊ณ , ํด๋น ์ ์ ์์ ์ธ์ ํ ์ ์ ์ ๋ฐฉ๋ฌธํ๋ ๊ฒ์ ๋งํ๋ค. ์ด๋ฌํ ์ ์ ๋ฐฉ๋ฌธ ๋ฐฉ๋ฒ์๋ ํฌ๊ฒ 2๊ฐ์ง๊ฐ ์๋๋ฐ, ์ด๊ฒ์ด ์์ผ๋ก ์ดํด๋ณผ DFS์ BFS์ด๋ค.์ฐ๋ฆฌ๋ ์์ ๊ทธ๋ํ๋ฅผ ์์๋ก ์ฌ์ฉํ๋ฉฐ ํ๋์ฉ ์ดํดํด ๋ณด๊ฒ ๋ค.1. DFSDFS๋ Depth First Search์ ์ฝ์๋ก ๊น์ด ์ฐ์ ํ์์ ๋ปํ๋ค. ๋ง ๊ทธ๋๋ก ๋ฐฉ๋ฌธํ๊ธฐ๋ก ์ ํ ์ธ์ ์ ์ ์ ์ต๋ ๊น์ด๊น์ง ํ์์ ๋ง์น ํ, ๋ค์ ์ธ์ ์ ์ ์ ํ์ธํ๋ ๊ฒ์ด๋ค. ์๊ณ ๋ฆฌ์ฆ ๋
ผ๋ฆฌ๋ ๋ค์๊ณผ ๊ฐ๋ค.(1) ํ์ฌ ์ ์ ๊ณผ ์ธ์ ํ ์ ์ ์ ๋ฐฉ๋ฌธํ๋ค.(2) ๋ฐฉ๋ฌธํ ์ ์ ์์ ์์ง ๋ฐฉ๋ฌธํ์ง ์์ ์ ์ ์ด ์๋ค๋ฉด ๋ฐฉ๋ฌธํ์ง ์์ ์ ์ ์ ๋ชจ๋ ๋ฐฉ๋ฌธํ ๋๊น์ง ..
2025.01.07
์๊ณ ๋ฆฌ์ฆ/์๊ณ ๋ฆฌ์ฆ-์ด๋ก
[๋ฐฑ์ค] 1700 ๋ฉํฐํญ ์ค์ผ์ค๋ง java ํ์ด, ๊ทธ๋ฆผ์ผ๋ก ์ดํดํ๊ธฐ
1. ๋ฌธ์ ์ค๋ช
๐๋ฌธ์ ๋งํฌ์ต์ํ์ผ๋ก ํ๋ฌ๊ทธ ๋นผ๋ ํ์ ์ธ๋ผ! (๋ค์ ๊ฝ๋ ํ์๋ ์ธ์ง ๋ง๋ผ!)2. ์ ๊ทผ ๋ฐฉ์ ๐๏ธKEY WORD: GREEDY ALGORITHM(0) ์ฌ์ ์ธํ
: ๋ฉํฐํญ์ ๋ํ๋ด๋ SET, ๊ฐ ์ ์ ๊ธฐ๊ธฐ์ ํ์ฌ ์กฐํ ์ค์ธ ์์น ๊ธฐ์ค ๊ฐ์ฅ ๊ฐ๊น์ด index๋ฅผ ๋ํ๋ด๋ QUEUE[์ ์๊ธฐ๊ธฐ ๋ฒํธ], ๋ช
๋ น ์์๋ฅผ ๋ํ๋ ORDER[]๋ฅผ ๋ฏธ๋ฆฌ ๊ตฌํํด๋๋ค.(1) QUEUE[] ์ฑ์ฐ๊ธฐ: ์์ ๋งํ๋ค์ํผ, index๋ ๊ฐ ๊ธฐ๊ธฐ์ ๋ฒํธ์ด๊ณ , ๋ฐฐ์ด๋ง๋ค ์์ ๋ง์ ํ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ํ์๋ ํด๋น index ๋ฒํธ ๊ธฐ๊ธฐ๊ฐ ๋์จ index๋ฅผ ๋ง๋ ๋๋ง๋ ์ฝ์
ํ๋ค. ์ด๋ ๊ฒ ๋๋ฉด, ํ์ front์๋ ๊ฐ์ฅ ์ฒ์ ์กฐ์ฐํ index๊ฐ ์ ํ ์์ ๊ฒ์ด๋ค.(2) SET(๋ฉํฐํญ) ์ฑ์ฐ๊ธฐ: ๋ฉํฐํญ์ ๋ํ๋ด๋ SET์ ์ฑ์ด๋ค..
2025.01.07
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด
[๋ฐฑ์ค] 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
์๊ณ ๋ฆฌ์ฆ/๋ฌธ์ ํ์ด