- Union-Find
- C++
- nestjs
- ํ๋ฆฌ์จ๋ณด๋ฉ
- ์ํฐ๋
- ์น๋ฆฐ์ด
- ์นด์นด์ค2021
- js
- ์ฌ๋ผ์ด๋ฉ ์๋์ฐ
- DFS
- ์ด๋ถํ์
- ๋ฐฑ์๋ ํ๋ฆฌ์จ๋ณด๋ฉ
- ์นด์นด์ค ์ฝํ
- ํ๋ก๊ทธ๋๋จธ์ค
- ๋์ ํ๋ก๊ทธ๋๋ฐ
- ๋นํธ๋ง์คํน
- ์์ฝ๋
- ์๊ณ ๋ฆฌ์ฆ
- ๋ค์ต์คํธ๋ผ
- golang
- BFS
- ๋ฐฑ์ค
- LCs
- go
- ํธ๋ฆฌ
- Python
- DP
- ๋นํธ๋งต
- ๊ฐ์ฅ๊ฐ๊น์ด๊ณตํต์กฐ์
- ์ฌ๊ท
- Today
- Total
๋ชฉ๋กAlgorithm (101)
Hello Ocean! ๐ผ
๋ฌธ์ ์ค๋ช ์คํ์ด๋ค์ ๋งค์ผ ๋ค๋ฅธ ์ท์ ์กฐํฉํ์ฌ ์ ์ด ์์ ์ ์์ฅํฉ๋๋ค. ์๋ฅผ ๋ค์ด ์คํ์ด๊ฐ ๊ฐ์ง ์ท์ด ์๋์ ๊ฐ๊ณ ์ค๋ ์คํ์ด๊ฐ ๋๊ทธ๋ ์๊ฒฝ, ๊ธด ์ฝํธ, ํ๋์ ํฐ์ ์ธ ๋ฅผ ์ ์๋ค๋ฉด ๋ค์๋ ์ ์ฒญ๋ฐ์ง๋ฅผ ์ถ๊ฐ๋ก ์ ๊ฑฐ๋ ๋๊ทธ๋ ์๊ฒฝ ๋์ ๊ฒ์ ์ ๊ธ๋ผ์ค๋ฅผ ์ฐฉ์ฉํ๊ฑฐ๋ ํด์ผ ํฉ๋๋ค. ์ข ๋ฅ ์ด๋ฆ ์ผ๊ตด ๋๊ทธ๋ ์๊ฒฝ, ๊ฒ์ ์ ๊ธ๋ผ์ค ์์ ํ๋์ ํฐ์ ์ธ ํ์ ์ฒญ๋ฐ์ง ๊ฒ์ท ๊ธด ์ฝํธ ์คํ์ด๊ฐ ๊ฐ์ง ์์๋ค์ด ๋ด๊ธด 2์ฐจ์ ๋ฐฐ์ด clothes๊ฐ ์ฃผ์ด์ง ๋ ์๋ก ๋ค๋ฅธ ์ท์ ์กฐํฉ์ ์๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ clothes์ ๊ฐ ํ์ [์์์ ์ด๋ฆ, ์์์ ์ข ๋ฅ]๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ์คํ์ด๊ฐ ๊ฐ์ง ์์์ ์๋ 1๊ฐ ์ด์ 30๊ฐ ์ดํ์ ๋๋ค. ๊ฐ์ ์ด๋ฆ์ ๊ฐ์ง ์์์ ์กด์ฌํ์ง ์์ต๋๋ค. cloth..
๋ฌธ์ ์ค๋ช n๋ช ์ด ์ ๊ตญ์ฌ์ฌ๋ฅผ ์ํด ์ค์ ์์ ๊ธฐ๋ค๋ฆฌ๊ณ ์์ต๋๋ค. ๊ฐ ์ ๊ตญ์ฌ์ฌ๋์ ์๋ ์ฌ์ฌ๊ด๋ง๋ค ์ฌ์ฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋ค๋ฆ ๋๋ค.์ฒ์์ ๋ชจ๋ ์ฌ์ฌ๋๋ ๋น์ด์์ต๋๋ค. ํ ์ฌ์ฌ๋์์๋ ๋์์ ํ ๋ช ๋ง ์ฌ์ฌ๋ฅผ ํ ์ ์์ต๋๋ค. ๊ฐ์ฅ ์์ ์ ์๋ ์ฌ๋์ ๋น์ด ์๋ ์ฌ์ฌ๋๋ก ๊ฐ์ ์ฌ์ฌ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค. ํ์ง๋ง ๋ ๋นจ๋ฆฌ ๋๋๋ ์ฌ์ฌ๋๊ฐ ์์ผ๋ฉด ๊ธฐ๋ค๋ ธ๋ค๊ฐ ๊ทธ๊ณณ์ผ๋ก ๊ฐ์ ์ฌ์ฌ๋ฅผ ๋ฐ์ ์๋ ์์ต๋๋ค.๋ชจ๋ ์ฌ๋์ด ์ฌ์ฌ๋ฅผ ๋ฐ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ต์๋ก ํ๊ณ ์ถ์ต๋๋ค.์ ๊ตญ์ฌ์ฌ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ฌ๋ ์ n, ๊ฐ ์ฌ์ฌ๊ด์ด ํ ๋ช ์ ์ฌ์ฌํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด ๋ด๊ธด ๋ฐฐ์ด times๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ๋ชจ๋ ์ฌ๋์ด ์ฌ์ฌ๋ฅผ ๋ฐ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ต์๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.์ ํ์ฌํญ์ ๊ตญ์ฌ์ฌ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋..
๋ฌธ์ ์ค๋ช ์๋ง์ ๋ง๋ผํค ์ ์๋ค์ด ๋ง๋ผํค์ ์ฐธ์ฌํ์์ต๋๋ค. ๋จ ํ ๋ช ์ ์ ์๋ฅผ ์ ์ธํ๊ณ ๋ ๋ชจ๋ ์ ์๊ฐ ๋ง๋ผํค์ ์์ฃผํ์์ต๋๋ค. ๋ง๋ผํค์ ์ฐธ์ฌํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด participant์ ์์ฃผํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด completion์ด ์ฃผ์ด์ง ๋, ์์ฃผํ์ง ๋ชปํ ์ ์์ ์ด๋ฆ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๋ง๋ผํค ๊ฒฝ๊ธฐ์ ์ฐธ์ฌํ ์ ์์ ์๋ 1๋ช ์ด์ 100,000๋ช ์ดํ์ ๋๋ค. completion์ ๊ธธ์ด๋ participant์ ๊ธธ์ด๋ณด๋ค 1 ์์ต๋๋ค. ์ฐธ๊ฐ์์ ์ด๋ฆ์ 1๊ฐ ์ด์ 20๊ฐ ์ดํ์ ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ์ฐธ๊ฐ์ ์ค์๋ ๋๋ช ์ด์ธ์ด ์์ ์ ์์ต๋๋ค. ์ ์ถ๋ ฅ ์ participant completion return [leo, kiki, ..
์ต๋ ์ต์ ์ฐพ๊ธฐ ํ ๋๋จผํธ ํธ๋ฆฌ ์ ํํธ๋ฆฌ(Selection tree) ๋ผ๊ณ ๋ ํ๋ฉฐ, ์ด๋ฅผ ์ด์ฉํ๋ฉด ์ฌ๋ฌ๊ฐ์ ์ ๋ ฌ๋ ๋ฌถ์๋ค(run) ์ค์์ ๊ฐ์ฅ ์์ ๊ฐ์ ์ฐพ๊ฑฐ๋, ๊ฐ์ฅ ํฐ ๊ฐ์ ์ฐพ์ ๋ ์ด๋ฅผ ์ด์ฉํ๋ฉด ๋น๊ตํ์๋ฅผ ์ค์ผ ์ ์๋ค. ์๋ฅผ๋ค์ด, ์์ธ ๊ฒฝ๊ธฐ ๊ฐ์ ์ถฉ์ฒญ ๋ฑ๋ฑ์์ ๊ฐ ์ง์ญ๋ง๋ค ๊ฐ์ฅ ํค ํฐ ์ฌ๋ 100๋ช ์ฉ์ ๋ฝ์ ๋ค์ ๊ทธ ๋ค ์ค์์ ๊ฐ์ฅ ํค๊ฐ ํฐ์ฌ๋์ ์์๋๋ก ๋ฝ๊ณ ์ถ์ ๋ ํ ๋๋จผํธ ํธ๋ฆฌ๋ฅผ ์ด์ฉํ ์ ์๋ค. ํ ๋๋จผํธ ํธ๋ฆฌ์๋ ๋ฃจํธ์ ๋ ํฐ๊ฐ์ ์ฌ๋ฆฌ๋๋, ์์ ๊ฐ์ ์ฌ๋ฆฌ๋๋์ ๋ฐ๋ผ ์น์ํธ๋ฆฌ์ ํจ์ํธ๋ฆฌ ๋ ์ข ๋ฅ๊ฐ ์๋ค. ์น์ ํธ๋ฆฌ (Winner Tree) ๋ถ๋ชจ๋ ธ๋๊ฐ ๋ ๊ฐ์ ์์๋ ธ๋๋ณด๋ค ๋ ์์ ๊ฐ์ ๋ํ๋ด๋ ์์ ์ด์งํธ๋ฆฌ์ด๋ค. ๋ฐ๋ผ์ ๋ฃจํธ๋ ธ๋๋ ํธ๋ฆฌ์์ ๊ฐ์ฅ ์์ ์์์ด๋ค. ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ฆฌ๋ k๊ฐ์ ru..
ํ์๋ฌธ์ ? ์ ์ฅ๋ ๋ฐ์ดํฐ๋ค ์ค์ ์ํ๋ ๊ฐ์ ์ฐพ๋ ๋ฌธ์ ์ด๋ค. 1. ์ ํ ํ์ ์๊ณ ๋ฆฌ์ฆ (Linear Search Algorithm) ๋งจ ์์ด๋, ๋งจ ๋ค๋ถํฐ ์์๋๋ก ํ๋ํ๋ ์ฐพ์๋ณด๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๊ฐ์ฅ ๋จ์ํ๊ณ ๊ฐ๋จํ ํ์ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ๋งจ ๋๋ถํฐ ํ๋ํ๋ ์ํ๋ ๊ฐ์ ์ฐพ์๋ณธ๋ค. ์ํ๋ ๊ฐ์ ์ฐพ์ผ๋ฉด, ํ์์ ์ข ๋ฃํ๋ค. ์์ 5๋ฅผ ์ฐพ์ ๋, ๋งจ ์ผ์ชฝ์ ์๋ 1๋ถํฐ ์์ํด์ ํ๋์ฉ ํ์ํ๋ค. ์๊ฐ ๋ณต์ก๋ ๊ธธ์ด n์ง๋ฆฌ์ ๋ฆฌ์คํธ๋ฅผ ํ์ํ ๋, ์ต์ ์ ๊ฒฝ์ฐ ๋ฆฌ์คํธ์ ์ฒซ ๋ฒ์งธ ์์๊ฐ ์ ๋ต์ธ ๊ฒฝ์ฐ : 1๋ฒ ์ต์ ์ ๊ฒฝ์ฐ ๋ฆฌ์คํธ์ ๋งจ ๋ง์ง๋ง ์์๊ฐ ์ ๋ต์ด๊ฑฐ๋, ๋ฆฌ์คํธ์ ์ ๋ต์ด ์์ ๋ : n๋ฒ ๋ฐ๋ผ์ O(n)์ ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๋ค. 2. ์ด์ง ํ์ ์๊ณ ๋ฆฌ์ฆ (Binary Search Algorithm) ์ค๊ฐ์ง์ ์ ๊ธฐ์ค์ผ..
H-index ์ถ์ฒ : https://programmers.co.kr/learn/courses/30/lessons/42747 ๋ฌธ์ ์ค๋ช H-Index๋ ๊ณผํ์์ ์์ฐ์ฑ๊ณผ ์ํฅ๋ ฅ์ ๋ํ๋ด๋ ์งํ์ ๋๋ค. ์ด๋ ๊ณผํ์์ H-Index๋ฅผ ๋ํ๋ด๋ ๊ฐ์ธ h๋ฅผ ๊ตฌํ๋ ค๊ณ ํฉ๋๋ค. ์ํค๋ฐฑ๊ณผ1์ ๋ฐ๋ฅด๋ฉด, H-Index๋ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌํฉ๋๋ค. ์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ nํธ ์ค, h๋ฒ ์ด์ ์ธ์ฉ๋ ๋ ผ๋ฌธ์ด hํธ ์ด์์ด๊ณ ๋๋จธ์ง ๋ ผ๋ฌธ์ด h๋ฒ ์ดํ ์ธ์ฉ๋์๋ค๋ฉด h์ ์ต๋๊ฐ์ด ์ด ๊ณผํ์์ H-Index์ ๋๋ค. ์ด๋ค ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์ธ์ฉ ํ์๋ฅผ ๋ด์ ๋ฐฐ์ด citations๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด ๊ณผํ์์ H-Index๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ์ฌํญ ๊ณผํ์๊ฐ ๋ฐํํ ๋ ผ๋ฌธ์ ์๋ 1..