์ ์ฒด ๊ธ216 [๋ ํ๊ฐ] ์ ์(ๆกๆ) ํ๊ฐ์๋ ธ ๊ฒ์ด๊ณ ์ ๋ฅผ ์ค๋๋ง์ ๋ค์ ์ฝ์ด ๋ณด์๋ค.์ผ๋ก ํ๊ฐ์๋ ธ๋ฅผ ์๊ฒ ๋์๊ณ , ๊ณ ๋ฑํ์์ด์๋ ๋์๊ฒ ๋ ์์ ์ฌ๋ฏธ๋ฅผ ์๋ ค์ค ์ฑ ์ด์๋ค.๊ทธ๋๋ถํฐ ๋๋ ํ๊ฐ์๋ ธ ๊ฒ์ด๊ณ ๋ผ๋ ์๊ฐ์ ์ฑ ์ ์ข์ํ๋ค.๊ธ์ ํก์ ๋ ฅ๊ณผ ์คํ ๋ฆฌ ์ค๊ณํ๋ ๋ฅ๋ ฅ์ด ์์ฒญ๋๋ค๊ณ ์๊ฐํ๋ค.๋ฌด์๋ณด๋ค๋ ์ด ์ฌ๋์ด ์๋ํ ๋๋ก ๋ด๊ฐ ์ฑ ์ ์ฝ์ด ๋๊ฐ๊ฒ ๋๋ค๋ ๊ฒ์ด ํ๋ ฅ์ด ์ ๋ง ๋ฐ์ด๋๋ค๊ณ ๋๋ผ๊ฒ ํด์ฃผ๋ ์์๋ค.๋ ์์ ์ ํ๋ฒ ์ฝ์๋ค.๊ทธ๋ฐ๋ฐ ์ต๊ทผ์ ์ง์ธ์ด ์ด ์ฑ ์ ์ฝ๊ณ ์๋ ๊ฒ์ ๋ณด๊ณ ์๊ธฐํ๋ ค๊ณ ๋ณด๋ ๋ง์ ๋ด์ฉ์ด ์ ๊ธฐ์ต๋์ง ์์์ ๋ค์ ์ฝ์ด๋ณด๊ฒ ๋์๋ค. ์ ์๋๋ถ๋ถ ์ฌ๋์ ๋ง์ ์์๋ ์ ์๊ฐ ํ๋์ฏค์ ์๊ฑฐ๋ ์์์ ๊ฒ์ด๋ผ ์์ํ๋ค.๊ทธ๋ฆฌ๊ณ ์์ผ๋ก ๋ ๋ค๋ฅธ ์ ์๋ฅผ ํ๊ฒ ๋๋ ์๊ฐ์ด ์ฌ์ง๋ ๋ชจ๋ฅด๊ฒ ๋ค.๋ชจ๋ ์ฌ๋์ด๋ผ๊ณ ํ๊ณ ์ถ์ง๋ง, 100% ๋จ์ธํ๋ ๊ฒ์ ์ข์ง ์๋ค .. 2025. 1. 28. AI ์ ์ฐ๋ ๊ฐ๋ฐ์? ์ค๋ ๋ฌธ๋ '๋๋ AI๋ฅผ ์ ํ์ฉํ๋ ๊ฐ๋ฐ์์ธ๊ฐ?' ๋ผ๋ ์๊ฐ์ด ๋ค์๋ค.์ด์ ๊ฐ๋ฐ์์ ChatGPT์ ๊ฐ์ LLM์ ๋ ์ ์๋ ์ฌ์ด๊ฐ ๋์๋ค๊ณ ์๊ฐํ๋ค.๋๋ ์ด๋ฌํ ์๋ ํ๋ฆ์ ๋ง์ถฐ AI๋ฅผ ์ ํ์ฉํ๋ ์ฌ๋์ธ๊ฐ?์ ๋ํ ์๋ฌธ์ด ๋ค์๋ค.์ฌ์ค ์๋ฌธ์ด๋ผ๊ธฐ ๋ณด๋ค๋ "์๋๋ค" ๋ผ๋ ๋ต์ด ์ด๋ฏธ ์ ํด์ ธ ์๋ ์ง๋ฌธ์ด์๋ค. ๋๋ ์ด๋ป๊ฒ AI๋ฅผ ์ฐ๊ณ ์๋๊ฐ?๋ด๊ฐ ๋ฌธ์ ๋ผ๊ณ ๋๋ ์ง์ ๋๋ ํ์ฌ ChatGPT ์ ๋ฃ ๋ฒ์ ๊ณผ, Cursor AI ์ ๋ฃ ๋ฒ์ ์ ์ฌ์ฉํ๊ณ ์๋ค.๋ฌด๋ ค 2๊ฐ์ AIํด์ ์ ๋ฃ๋ก ์ฌ์ฉํ๊ณ ์์ผ๋, ๋๋ ์์ ํธ๋ ๋ํ ๊ฐ๋ฐ์์์ ~ ๋ผ๊ณ ํ ์ ์์๊น?๊ทธ๋ ๋ค๊ธฐ์ ๋ด๊ฐ ์ต๊ทผ์ CursorAI(์ ํํ๋ ์ฌ๋ฌ ๋ชจ๋ธ ์ค Claude ์ฌ์ฉ ์ค)์๊ฒ ๊ฐ์ฅ ๋ง์ด ํ ๋ง์ 2๊ฐ์ง๋ค."์๋ ๊ทธ๊ฒ ์๋๋ผ""์ฌ์ ํ ๋ด๊ฐ ์ํ๋๋๋ก .. 2024. 12. 19. ์์ ํด์ ์ค๊ณ ์ธ์ ?์ธ์ ์ฐ๋ฆฌ๋ ์์ ํด์๋ฅผ ํ์๋ก ํ ๊น๋์ฉ๋ ํธ๋ํฝ์ ๋ฒํฐ๊ธฐ ์ํด์ DB๋ฅผ ๋ถํ ํ์ฌ ์ฌ๋ฌ ๋์ ์ค๋๋ฅผ ๊ตฌ์ถํ๋ค๊ณ ํ์์ํ์ ๊ท๋ชจ ํ์ฅ์ฑ์ ๋ฌ์ฑํ๊ธฐ ์ํด์๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ๋ฌ ์ค๋์ ๊ท ๋ฑํ๊ฒ ๋๋๋ ๊ฒ์ด ์ค์ํ๋ค.API ์์ฒญ์ ๋ํด์๋ ๋์ผํ๋ค. ์์ฒญ์ด ์ฌ๋ฌ ์๋ฒ์ ๊ท ๋ฑํ๊ฒ ๋๋ ์ง๋ ๊ฒ์ด ์ค์ํ๋ค.์์ ํด์๋ ์ด ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ๋ณดํธ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ธฐ์ ํด์ ํค ์ฌ๋ฐฐ์น ๋ฌธ์ ์ฌ๋ฌ ๋์ ์๋ฒ๋ฅผ ๋๋๋ฐ, ๊ทธ ์ค์ ํ๋๊ฐ ๊ณ ์ฅ๋๋ค๋ฉด?N๊ฐ์ ์บ์ ์๋ฒ๊ฐ ์๋ค๊ณ ํด๋ณด์.์ด ์๋ฒ๋ค์ ๋ถํ๋ฅผ ๊ท ๋ฑํ๊ฒ ๋๋๋ ๋ณดํธ์ ์ธ ๋ฐฉ๋ฒ์ ์๋์ ํด์ ํจ์๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๋ค.serverIndex = hash(key) % N[์์]ํคํด์ํด์ % 4 (์๋ฒ ์ธ๋ฑ์ค)key0183586171key1261435840key2181311462.. 2024. 8. 29. ์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น์ ์ค๊ณ ์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น?๋คํธ์ํฌ ์์คํ ์์ ์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น๋?ํด๋ผ์ด์ธํธ ๋๋ ์๋น์ค๊ฐ ๋ณด๋ด๋ ํธ๋ํฝ์ ์ฒ๋ฆฌ์จ(rate)์ ์ ์ดํ๊ธฐ ์ํ ์ฅ์นHTTP๋ฅผ ์๋ก ๋ค๋ฉด, ํน์ ๊ธฐ๊ฐ ๋ด์ ์ ์ก๋๋ ํด๋ผ์ด์ธํธ์ ์์ฒญ ํ์๋ฅผ ์ ํํ๋ ์ฅ์น๊ฐ ๋ ๊ฒAPI ์์ฒญ ํ์๊ฐ ์๊ณ์น๋ฅผ ๋์ด์๋ฉด, ์ดํ์ ์์ฒญ์ ์ฐจ๋จ๋๋ค ์์์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น ์ฌ์ฉ ์์์ฌ์ฉ์๋ ์ด๋น 2ํ ์ด์ ์ ๊ธ์ ์ฌ๋ฆด ์ ์๋ค.๊ฐ์ IP ์ฃผ์๋ก๋ ํ๋ฃจ์ 10๊ฐ ์ด์์ ๊ณ์ ์ ์์ฑํ ์ ์๋ค.๊ฐ์ ๋๋ฐ์ด์ค๋ก๋ ์ฃผ๋น 5ํ ์ด์ ๋ฆฌ์๋๋ฅผ ์์ฒญํ ์ ์๋ค. ์ฅ์ ?์ฒ๋ฆฌ์จ ์ ํ ์ฅ์น๋ฅผ ๋๋ ์ด์ DoS(Denial of Service) ๊ณต๊ฒฉ์ ์ํ ์์ ๊ณ ๊ฐ์ ๋ฐฉ์ง์๋ฒ์ ์๋ฅผ ์ค์ผ ์ ์์ด, ๋น์ฉ์ ์ธ ์ธก๋ฉด์์ ์ ๋ฆฌ์ฌ์ฉ์์ ์๋ชป๋ ์ด์ฉ ํจํด์ผ๋ก ์ธํ ์๋ฒ์ ๊ณผ๋ถํ๋ฅผ ๋ง์ ์ .. 2024. 8. 29. 2024 ์๋ฐ๊ธฐ ์ทจ์ ์ค๋น ํ๊ณ ์๋ฐ๊ธฐ์ ๋ง๋ค๋ฉด ๋ง์ ์ผ์ด ์์๊ณ , ๊ทธ ์์์ ๋ง์ ๊ณ ๋ฏผ๋ค์ ํ๋ค.์ด ๊ณผ์ ๋ค์ด ๋๊ตฐ๊ฐ ๋๋ ํ๋ฐ๊ธฐ์ ๋์๊ฒ ๋์์ด ๋์ง ์์๊น ํด์ ์ด๋ ๊ฒ ๊ธ๋ก ๋จ๊ธฐ๊ฒ ๋์๋ค.4ํ๋ ์ด๋ผ๋ฉด ๋๋ถ๋ถ์ด ์ทจ์ ์ ๋ํ ๊ณ ๋ฏผ์ ํ ๊ฒ์ด๋ผ ์์ํ๋ค.์ด๋ค ๊ฑธ ํด์ผ ์ทจ์ ์ ๋์์ด ๋ ๊น?์ด์ฉ๋ฉด ๋ง์ง๋ง ๋ฐฉํ์ด ๋ ์๋ ์๋ ์ฌ๋ฆ ๋ฐฉํ์๋ ์๊ฐ์ ์ด๋ป๊ฒ ๋ณด๋ด๋ ๊ฒ ์ข์๊น?์ด์ธ์๋ ๋ค์ํ ๊ณ ๋ฏผ๋ค์ด ์์ ๊ฒ์ด๊ณ , ๋ ๋ํ ์ด๋ฐ ๊ณ ๋ฏผ๋ค์ ๋ง์ด ํ๋ค.์๋ฐ๊ธฐ์ ๋ด๊ฐ ์ง์ํ๋ ๊ฒ๊ณผ ๊ทธ ๊ณผ์ ์ ๋ค์ ๋ ์ฌ๋ ค๋ณด๋ ค ํ๋ค. 1. SW ๋ง์์คํธ๋ก (a.k.a ์๋ง)๊ฐ๋ฐ์๋ฅผ ๊ฟ๊พธ๋ ๋ํ์๋ค์ด๋ผ๋ฉด ๋๊ตฌ๋ ๋ค์ด๋ดค์ ๋งํ ๊ต์ก ํ๋ก๊ทธ๋จ์ด๋ค.๋ด๊ฐ ์๋ง๋ฅผ ์ง์ํ ์ด์ ๋ ๋ง์ ํํ๋ค๋ ์์ง๋ง, ๊ทธ ์ค์์ ๋ฉํ ๋๋ค์ ๊ฐ์ฅ ๋ต๊ณ ์ถ์๋ค.ํญ์ ๊ฐ๋ฐ์ ํ๋ฉด์, ์ง๊ธ ๋ด๊ฐ ์ง๊ณ ์๋.. 2024. 6. 28. Redis ์คํํด๋ณด๊ธฐ Redis๋ฅผ ์ง์ ์ค์นํ๊ณ , ์คํ์ ํด๋ณด์git clone https://github.com/valkey-io/valkeymakeValkey(Redis)๋ Linux ํ๊ฒฝ์์ ์คํ์ ํด์ผ ํ๊ธฐ ๋๋ฌธ์, Mac ๋๋ WSL ํ๊ฒฝ์์ ๋น๋ํด์ผ ํ๋ค๋๋ Mac์ ์ฌ์ฉํ๊ณ ์๊ธฐ ๋๋ฌธ์ ๋ณ๋์ ์ธํ ์ ํ์ง ์์๋ค Redis์ ๋๋ ํ ๋ฆฌ ๊ตฌ์กฐRedis ํ๋ก์ ํธ๋ ์ด๋ค ๋๋ ํ ๋ฆฌ๋ค์ ๊ฐ๊ณ ์์๊นdepsํ์ํ dependency๋ค์ ์ค์นํ ์ ์๋ ๋๋ ํ ๋ฆฌutilstestsํ ์คํธ์์ ์ฌ์ฉ๋๋คsrc ๋ง์ฝ ์๋ก์ด ๊ธฐ๋ฅ์ ์์ฑํด์ Contribution์ ํ๊ณ ์ถ๋ค๋ฉดmake test ๋ช ๋ น์ ์คํํ ํ์ ํต๊ณผ๋ฅผ ํด์ผ ํ๋ค Redis ์คํํ๊ธฐRedis ์๋ฒ๋ฅผ ์คํํด๋ณด์cd src./valkey-server์ ๋ช ๋ น์ด๋ฅผ ํตํด์ ๋ ๋์ค.. 2024. 5. 28. 10. Louvain Algorithm ์ ์ฉ ๋ฐ ๋ก๊ทธ์ธ ๊ตฌํ ์ด๋ฒ ํ๋ ์์ฝ์ง๋ ๋ฒ์ ์ ๋์จ ํ์ธ๋์ ์ฌ์ฉ์ผ๋ก ๋ฐ์ํ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ณ ์ ์๋ก์ด ์๊ณ ๋ฆฌ์ฆ์ ๋์ ํ๋ค์ด์ ์๋ ์ปค๋ฎค๋ํฐ๋ฅผ ํ์งํ๊ธฐ ์ํด์ Union-Find ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ๋ค.์ฒ์์ ํ๊ธฐ์ ์ธ ์๊ฐ์ด๋ผ๊ณ ์ฌ๊ฒผ์ง๋ง, ๋ฐ์ดํฐ๊ฐ ๋ง์์ง๋ค๋ณด๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค.๋ฐ์ดํฐ๊ฐ ๋ง์์ง๋ค๋ณด๋ ์์์ ๋ ๋ฐ์ดํฐ ๊ฐ์ ์ด๋ป๊ฒ๋ ํ๊ณ ํ๊ณ ์ฐ๊ฒฐ์ด ๋์ด ์์๊ณ , ๊ทธ๋ฌ๋ค๋ณด๋ Union-Find๋ก ์งํฉ์ ์ฐพ์์ ๋๋ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ํ๋์ ์งํฉ์ ์์๋ ๊ฒ์ผ๋ก ์ธ์๋๋ค๋ ๋ฌธ์ ๊ฐ ์์๋ค Modularity๋คํธ์ํฌ ๋ด์ ์ปค๋ฎค๋ํฐ๊ฐ ์ผ๋ง๋ ๋ชจ๋ํ ๋์ด ์๋๊ฐ ๋ฅผ ์ ๋์ ์ผ๋ก ๋ํ๋ด๊ธฐ ์ํ ๊ฐ์ง๋ ๋ฏธํ ๋ ์กฐ๊ต๋์ด Modularity ์๊ณ ๋ฆฌ์ฆ์ ํ๋ฒ ์์๋ณด๋ผ๊ณ ์ถ์ฒํด์ฃผ์ จ๋คModulairty๋ ์ปค๋ฎค๋ํฐ ๋ด๋ถ์ ํผ์ณ์ ธ ์๋ ๋งํฌ๋ค์ด ๋ฌด์์์ ์ธ ์ฐ๊ฒฐ.. 2024. 5. 17. [c++] map๊ณผ unordered_set์ ์ฐจ์ด ๊ณต๋ถ ๊ณ๊ธฐ์ค๋ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ํ๋ค๊ฐ, map์ ์ฌ์ฉํ์ ๋๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ์ง๋ง unordered_set์ ์ฌ์ฉํ์ ๋๋ ํต๊ณผํ๋ค์ ๋ ฅ๋ ๊ฐ์ค์ ํน์ ๊ฐ์ด ์๋์ง ์๋์ง๋ฅผ ํ์ ํ๊ธฐ ์ํด์ ํด์๋ฅผ ์ฌ์ฉํด์ O(1) ๋ง์ ํ์ํ๊ณ ์ ํ๋ค๊ทธ๋์ ๋๋ map์ด key, value๋ก ์ ์ฅํ๋ ๊ฒ์ ๋ ์ฌ๋ ค ๋น์ฐํ ํด์์ผ ๊ฒ์ด๋ผ ์๊ฐํ๊ณ ์ฌ์ฉํ๋ค๊ทธ๋ฐ๋ฐ, map์ ์ฌ์ฉํ์ ๋๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ๊ณ ํด์๊ฐ ์๋ ๊ฒ์ ๊นจ๋ฌ์๋ค ํ์๋ ๋ฌธ์ https://www.acmicpc.net/problem/19585 mapSTL์์ ์ ๊ณตํ๋ key, value ์๋ฃ๊ตฌ์กฐmap์ key, value๊ฐ pair ํํ๋ก ์ ์ฅ์ด ๋๋ฉฐ, ํด์ ํ ์ด๋ธ์ด ์๋ ์ด์ง ํ์ ํธ๋ฆฌ(BST) ๊ธฐ๋ฐ์ผ๋ก ํ์ ์ ํ๋ค๋ฐ๋ผ์ ํ์ ์๊ฐ์ O(logN)์ ํํ๋.. 2024. 5. 15. Two-Phase Locking (2PL) 2PL ๋ฑ์ฅ ๋ฐฐ๊ฒฝ2PL์ ์ ์ฐฉ์๋๊ฒ ๋์์๊น?๊ฐ์ ์ ๊ทผํ๊ธฐ ์ ์ lock์ ์ก๊ณ , ์ ๊ทผ์ด ๋๋ ํ์ lock์ ํด์ ํ๋ค์ธ๋ป๋ณด๋ฉด lock์ ๊ต์ฅํ ์ ์ฌ์ฉํ ๊ฒ ๊ฐ๋ค๊ทธ๋ฐ๋ฐ ์ ์์ ์ธ ๊ฒฐ๊ณผ(serialํ๊ฒ ์ํ)๋ฅผ ์๊ฐํด๋ณด๋ฉด ์๋์ ๊ฐ์ด ๋์์ผ ํ๋คbalx = 220, baly = 330 (T9 -> T10)balx = 210, baly = 340 (T10 -> T9)ํ์ง๋ง ์ํ ๊ฒฐ๊ณผ๋ balx = 220, baly = 340 ์ด๋ผ๋ ๊ฒฐ๊ณผ๊ฐ ๋์๋คlock์ ์ฌ์ฉํ์์์๋ serializable ํ์ง ์์ schedule์ด ๋ฐ์ํ๋ค๊ฐ์ ์ ๊ทผํ๊ธฐ ์ ์ lock์ ์ก๋ ๊ฒ์ ์ข์์ผ๋, lock์ ๋๋ฌด ๋นจ๋ฆฌ ํด์ ํ ๊ฒ์ด ๋ฌธ์ ๋คlock์ ๊ฑธ๊ณ ํธ๋ ๊ฒ์ ๋ํ ์ถ๊ฐ์ ์ธ ๊ท์ ๊ฐ ํ์ํจ์ ์ ์ ์๋ค 2PLTwo-Pha.. 2024. 5. 10. ์ด์ 1 2 3 4 ยทยทยท 24 ๋ค์