- ์๊ณ ๋ฆฌ์ฆ
- ํ๋ฆฌ์จ๋ณด๋ฉ
- golang
- ๊ฐ์ฅ๊ฐ๊น์ด๊ณตํต์กฐ์
- DFS
- ๋นํธ๋ง์คํน
- ํ๋ก๊ทธ๋๋จธ์ค
- ์นด์นด์ค ์ฝํ
- ์์ฝ๋
- ๋ฐฑ์ค
- C++
- go
- ์นด์นด์ค2021
- ํธ๋ฆฌ
- ๋ค์ต์คํธ๋ผ
- ์น๋ฆฐ์ด
- ๋นํธ๋งต
- ๋ฐฑ์๋ ํ๋ฆฌ์จ๋ณด๋ฉ
- ์ํฐ๋
- nestjs
- ์ฌ๊ท
- ๋์ ํ๋ก๊ทธ๋๋ฐ
- js
- ์ด๋ถํ์
- LCs
- Union-Find
- BFS
- Python
- ์ฌ๋ผ์ด๋ฉ ์๋์ฐ
- DP
- Today
- Total
๋ชฉ๋กAlgorithm (101)
Hello Ocean! ๐ผ
๋ฌธ์ www.acmicpc.net/problem/1520 1520๋ฒ: ๋ด๋ฆฌ๋ง ๊ธธ ์ฌํ์ ๋ ๋ ์ธ์ค์ด๋ ์ง๋๋ฅผ ํ๋ ๊ตฌํ์๋ค. ์ด ์ง๋๋ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์ง์ฌ๊ฐํ ๋ชจ์์ด๋ฉฐ ์ฌ๋ฌ ์นธ์ผ๋ก ๋๋์ด์ ธ ์๋ค. ํ ์นธ์ ํ ์ง์ ์ ๋ํ๋ด๋๋ฐ ๊ฐ ์นธ์๋ ๊ทธ ์ง์ ์ ๋์ด๊ฐ ์ฐ์ฌ ์์ผ www.acmicpc.net ํ์ด ์ฒ์์๋ DP๋ง ์ด์ฉํด์, cache[i][j]์ (i,j) ์์น๊น์ง ๋์ฐฉํ ์ ์๋ ๋ชจ๋ ๋ด๋ฆฌ๋ง๊ธธ ๊ฒฝ์ฐ์ ์๋ฅผ ์ ์ฅํ๋ ค๊ณ ํ๋ค. ํ์ง๋ง, ์ํ์ข์ฐ๋ก ๋ชจ๋ ์ด๋์ด ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์ด ๋ฐฉ๋ฒ์ ์คํจํ๋ค. ๋ ๋ฒ์งธ ์๊ฐ๋ ๋ฐฉ๋ฒ์, ์ต๋จ๊ฒฝ๋ก์ฐพ๊ธฐ ๋ฌธ์ ๋ก ํด์ํด์ BFS๋ก ํธ๋ ๋ฐฉ๋ฒ์ด์๋ค. ํ์ง๋ง, ์๊ฐ์ด๊ณผ ๋๋ฌธ์ ์ด ๋ฐฉ๋ฒ์ ์คํจํ๋ค. ์ต์ข ๋ฐฉ๋ฒ์, DFS์ DP๋ฅผ ์ ๋ชฉํ ๋ฐฉ๋ฒ์ด๋ค. DFS๋ก ํ์ํ๋, DP์ ๋ฉ๋ชจ๋ฆฌ..
๋ฌธ์ ์ค๋ช [๋ณธ ๋ฌธ์ ๋ ์ ํ์ฑ๊ณผ ํจ์จ์ฑ ํ ์คํธ ๊ฐ๊ฐ ์ ์๊ฐ ์๋ ๋ฌธ์ ์ ๋๋ค.] ๋ฐค๋ฆ๊ฒ ๊ท๊ฐํ ๋ ์์ ์ ์ํด ํญ์ ํ์๋ฅผ ์ด์ฉํ๋ ๋ฌด์ง๋ ์ต๊ทผ ์ผ๊ทผ์ด ์ฆ์์ ธ ํ์๋ฅผ ๋ ๋ง์ด ์ด์ฉํ๊ฒ ๋์ด ํ์๋น๋ฅผ ์๋ ์ ์๋ ๋ฐฉ๋ฒ์ ๊ณ ๋ฏผํ๊ณ ์์ต๋๋ค. "๋ฌด์ง"๋ ์์ ์ด ํ์๋ฅผ ์ด์ฉํ ๋ ๋๋ฃ์ธ ์ดํผ์น ์ญ์ ์์ ๊ณผ ๋น์ทํ ๋ฐฉํฅ์ผ๋ก ๊ฐ๋ ํ์๋ฅผ ์ข ์ข ์ด์ฉํ๋ ๊ฒ์ ์๊ฒ ๋์์ต๋๋ค. "๋ฌด์ง"๋ "์ดํผ์น"์ ๊ท๊ฐ ๋ฐฉํฅ์ด ๋น์ทํ์ฌ ํ์ ํฉ์น์ ์ ์ ํ ์ด์ฉํ๋ฉด ํ์์๊ธ์ ์ผ๋ง๋ ์๋ ์ ์์ ์ง ๊ณ์ฐํด ๋ณด๊ณ "์ดํผ์น"์๊ฒ ํฉ์น์ ์ ์ํด ๋ณด๋ ค๊ณ ํฉ๋๋ค. ์ ์์ ๊ทธ๋ฆผ์ ํ์๊ฐ ์ด๋ ๊ฐ๋ฅํ ๋ฐ๊ฒฝ์ ์๋ 6๊ฐ ์ง์ ์ฌ์ด์ ์ด๋ ๊ฐ๋ฅํ ํ์๋ ธ์ ๊ณผ ์์์๊ธ์ ๋ณด์ฌ์ฃผ๊ณ ์์ต๋๋ค. ๊ทธ๋ฆผ์์ A์ B ๋ ์ฌ๋์ ์ถ๋ฐ์ง์ ์ธ 4๋ฒ ์ง์ ์์ ์ถ๋ฐํด..
๋ฌธ์ ์ถ์ฒ www.acmicpc.net/problem/1175 1175๋ฒ: ๋ฐฐ๋ฌ ์ด์ ์ ๋ฌผ์ ๋ชจ๋ ํฌ์ฅํ ๋ฏผ์์ด๋ ์ด์ ์ ๋ฌผ์ ๋ฐฐ๋ฌํ๋ ค๊ณ ํ๋ค. ๋ฏผ์์ด๊ฐ ์ ๋ฌผ์ ๋ฐฐ๋ฌํ ๊ณณ์ ์ด ๋ฌธ์ ๋ฅผ ์ฝ๋ ์ฌ๋๋ค์ด ์์ ์๋ ๊ต์ค์ด๋ค. ๊ต์ค์ ์ง์ฌ๊ฐํ๋ชจ์์ด๊ณ , ๋ชจ๋ ๊ฐ์ ํฌ๊ธฐ์ ์ ์ฌ www.acmicpc.net ๋ฌธ์ ์ด์ ์ ๋ฌผ์ ๋ชจ๋ ํฌ์ฅํ ๋ฏผ์์ด๋ ์ด์ ์ ๋ฌผ์ ๋ฐฐ๋ฌํ๋ ค๊ณ ํ๋ค. ๋ฏผ์์ด๊ฐ ์ ๋ฌผ์ ๋ฐฐ๋ฌํ ๊ณณ์ ์ด ๋ฌธ์ ๋ฅผ ์ฝ๋ ์ฌ๋๋ค์ด ์์ ์๋ ๊ต์ค์ด๋ค. ๊ต์ค์ ์ง์ฌ๊ฐํ๋ชจ์์ด๊ณ , ๋ชจ๋ ๊ฐ์ ํฌ๊ธฐ์ ์ ์ฌ๊ฐํ ๋ธ๋ก์ผ๋ก ๋๋์ด์ ธ ์๋ค. ์ ๋ ฅ์ผ๋ก ๊ต์ค์ ์ง๋๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ๊ฐ์ ์ ์ฌ๊ฐํ ๋ธ๋ก์ ๋ค์๊ณผ ๊ฐ์ด 4๊ฐ์ง ์ข ๋ฅ๊ฐ ์๋ค. S : ์ง๊ธ ๋ฏผ์์ด๊ฐ ์๋ ๊ณณ์ด๋ค. ์ด๊ณณ์ด ๋ฏผ์์ด๊ฐ ๋ฐฐ๋ฌ์ ์์ํ๋ ๊ณณ์ด๋ค. C : ๋ฏผ์์ด๊ฐ ๋ฐ๋์ ์ ..
๋ฌธ์ ์ค๋ช ์๋ก ๊ฐ์ ํ๋ ์ ์ ๋ค์ด ์นด์นด์ค ์์ด๋ ๊ท์น์ ๋ง์ง ์๋ ์์ด๋๋ฅผ ์ ๋ ฅํ์ ๋, ์ ๋ ฅ๋ ์์ด๋์ ์ ์ฌํ๋ฉด์ ๊ท์น์ ๋ง๋ ์์ด๋๋ฅผ ์ถ์ฒํด์ฃผ๋ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ๋ ๊ฒ์ ๋๋ค. ๋ค์์ ์นด์นด์ค ์์ด๋์ ๊ท์น์ ๋๋ค. ์์ด๋์ ๊ธธ์ด๋ 3์ ์ด์ 15์ ์ดํ์ฌ์ผ ํฉ๋๋ค. ์์ด๋๋ ์ํ๋ฒณ ์๋ฌธ์, ์ซ์, ๋นผ๊ธฐ(-), ๋ฐ์ค(_), ๋ง์นจํ(.) ๋ฌธ์๋ง ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋จ, ๋ง์นจํ(.)๋ ์ฒ์๊ณผ ๋์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ ๋ํ ์ฐ์์ผ๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. ๋ค์ค๋ ๋ค์๊ณผ ๊ฐ์ด 7๋จ๊ณ์ ์์ฐจ์ ์ธ ์ฒ๋ฆฌ ๊ณผ์ ์ ํตํด ์ ๊ท ์ ์ ๊ฐ ์ ๋ ฅํ ์์ด๋๊ฐ ์นด์นด์ค ์์ด๋ ๊ท์น์ ๋ง๋ ์ง ๊ฒ์ฌํ๊ณ ๊ท์น์ ๋ง์ง ์์ ๊ฒฝ์ฐ ๊ท์น์ ๋ง๋ ์๋ก์ด ์์ด๋๋ฅผ ์ถ์ฒํด ์ฃผ๋ ค๊ณ ํฉ๋๋ค. ์ ๊ท ์ ์ ๊ฐ ์ ๋ ฅํ ์์ด๋๊ฐ new_id ๋ผ๊ณ ํ๋ค๋ฉด, 1๋จ๊ณ ..
๋ฌธ์ ์ค๋ช ์ฃผ์ด์ง ๊ฒ์์ด์ ๋ํ ์น ํ์ด์ง์ ๋งค์นญ์ ์๋ฅผ ๊ณ์ฐํด์, ๋งค์นญ์ ์๊ฐ ๊ฐ์ฅ ํฐ ์น ํ์ด์ง์ ์ธ๋ฑ์ค ๊ตฌํ๊ธฐ ๋ง์ฝ ๊ทธ๋ฐ ์นํ์ด์ง๊ฐ ์ฌ๋ฌ ๊ฐ๋ผ๋ฉด ๊ทธ์ค ๋ฒํธ๊ฐ ๊ฐ์ฅ ์์ ๊ฒ์ ๊ตฌํ๊ธฐ ๊ฐ ํ์ด์ง๋ณ๋ก 4 ๊ฐ์ง์ ์ ์๋ฅผ ๊ณ์ฐํ ์ ์๋ค. ๊ธฐ๋ณธ ์ ์ : ์น ํ์ด์ง์์ ๊ฒ์์ด๊ฐ ๋ฑ์ฅํ๋ ํ์ (๋์๋ฌธ์ ๋ฌด์) ์ธ๋ถ ๋งํฌ ์ : ํด๋น ํ์ด์ง์ ์กด์ฌํ๋, ๋ค๋ฅธ ํ์ด์ง๋ก ๊ฑธ๋ฆฐ ๋งํฌ์ ์ ๋งํฌ ์ ์ : [ํด๋น ํ์ด์ง(A)์ ๋งํฌ๊ฐ ์กด์ฌํ๋ ๋ค๋ฅธ ํ์ด์ง(B)์ ๊ธฐ๋ณธ ์ ์ / B์ ์ธ๋ถ ๋งํฌ ์]์ ์ดํฉ ๋งค์นญ ์ ์ : ๊ธฐ๋ณธ ์ ์ + ๋งํฌ ์ ์ ์๋ฅผ ๋ค์ด, ๋ค์๊ณผ ๊ฐ์ด A, B, C ์ธ ๊ฐ์ ์นํ์ด์ง๊ฐ ์๊ณ , ๊ฒ์์ด๊ฐ hi๋ผ๊ณ ํ์. ์ด๋ A ์นํ์ด์ง์ ๋งค์นญ์ ์๋ ๋ค์๊ณผ ๊ฐ์ด ๊ณ์ฐํ ์ ์๋ค. ๊ธฐ๋ณธ ์ ์๋ ๊ฐ ์นํ์ด์ง์์ h..
struct์ class์ ๊ฐ๋ ์ ์ธ ๊ณตํต์ ์ ๋ ๊ฐ์ง ๋ชจ๋ ์ฐ๊ด๋ ๋ฐ์ดํฐ๋ค์ ๋ฌถ์ ์ ์๋ ๋ฌธ๋ฒ์ ์ฅ์น๋ผ๋ ๊ฒ ์ด๋ค. ๊ทธ๋ฆฌ๊ณ C++์์ ๋ ๊ฐ์ง์ ์๋์์ ์ฐจ์ด์ ์ ํฌ๊ฒ ์๋ค๊ณ ํ๋ค. ํ ๊ฐ์ง ์ฐจ์ด์ ์, class์ ๊ธฐ๋ณธ ์ ๊ทผ ์ง์์๋ private์ด๊ณ , struct๋ public ์ด๋ผ๋์ ? C์์ ํ์ํธํ์ฑ์ ์ฃผ๊ณ ์ถ์ ๋๋ struct๋ฅผ ์ฌ์ฉํ๋ค๊ณ ํ๋ค. (C๋ struct๋ง ์กด์ฌ) ๊ฒฐ๋ก : C++์์ ๋ ๊ฐ์ง๋ ํฐ ์ฐจ์ด๊ฐ ์๋ค.