python
[ํ์ด์ฌ | Python] Mutable object, Immutable object
ํ์ด์ฌ์ ๋ชจ๋ ๊ฒ์ ๊ฐ์ฒด(object)์ด๋ค. ๊ฑฐ์ ๋ชจ๋ ๊ฐ์ฒด๋ ์์ฑ(attributes)๊ณผ ๋ฉ์๋(methods)๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, ๊ฐ์ฒด๋ผ๋ฆฌ์ ์๋ณ์ id(object)๋ฅผ ํตํด์ ํ๋ค. id๊ฐ ๊ฐ๋ค๋ฉด ๋์ผํ ๊ฐ์ฒด, ๊ทธ๋ ์ง ์์ผ๋ฉด ๋ค๋ฅธ ๊ฐ์ฒด์ด๋ค. id๋ ํด๋น ๊ฐ์ฒด๋ฅผ ๊ฐ๋ฆฌํค๋ ์ ์ผํ ์์(unique constant)์ด๋ฉฐ, ๊ฐ์ฒด๊ฐ ์๋ก ๊ฐ์์ง ๋น๊ต๋ฅผ ์ํด์๋ $==$ ๊ฐ ์๋ is ๋ฅผ ์ฌ์ฉํ๋ค. C์ธ์ด์ ํฌ์ธํฐ์ ๊ฐ์ ๊ฐ๋ ์ด์ง๋ง, ์ค์ ๋ก id๊ฐ ๊ฐ๋ฆฌํค๋ ๊ฒ์ด ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์๋ฅผ ์๋ฏธํ๋ ๊ฒ์ ์๋๋ค. ๊ฐ์ฒด๋ ๋ณ๊ฒฝ ๊ฐ๋ฅํ๊ฑฐ๋, ๊ทธ๋ ์ง ์๋ค. ์ด๊ฒ์ด mutable object์ immutable object์ ์ฐจ์ด์ด๋ค. ์ฌ์ด ์๋ก, a = "abc" a.replace("a", "x") # a๋ ์ฌ์ ํ "abc"์ด..
[ํ์ด์ฌ | Python] ํธ๋ผ์ด (Trie) ์๋ฃ๊ตฌ์กฐ
๋ฌธ์์ด์ ํญ์ ์ด๋ ต๋ค. KMP๋ ๊ทธ๋ ๊ณ , digit์ผ๋ก ์ ๋ ฌํ๋ ๊ฒ๋ ๊ทธ๋ ๊ณ , ์๋ฉด ์์๋ก ๋จธ๋ฆฌ์ํ์ง๋ ๋ถ์ผ. ๊ทธ๋งํผ ์ด๋ ต๊ฒ ๋ง๋ค๋ฉด ํจ์ฌ ์ด๋ ต๊ฒ๋ ๋ง๋ค ์ ์๋ค๋ ์ด์ผ๊ธฐ๊ฒ ์ง. ์ค๋์ ํธ๋ผ์ด๋ฅผ ๊ณต๋ถํ๋ค. Radix tree / Prefix tree ๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋๋ฐ, ํ ๋จ์ด์ ์ ๋์ฌ(์ ๋์ด)๋ฅผ ๋ชจ๋ ์ ์ฅํ๊ณ ์๋ค. (ํด๋น ๋จ์ด์ ๋๋ฌํ๊ธฐ๊น์ง์ ๋ฌธ์๋ค์ ์ ์ฅํ๋ค) donghoon ์ด๋ผ๋ ๋จ์ด๋ฅผ ๋ณด๋ฉด, dong ๋ ์ ๋์ฌ๊ฐ ๋ ์ ์๊ณ , do ๋ ์ ๋์ฌ๊ฐ ๋ ์ ์๋ค. ํธ๋ผ์ด์์๋ ์ด ๋จ์ด๋ค์ด ์๋ก ํฌํจ๊ด๊ณ์ ์๋ค๋ ๊ฒ์ ์๋ ค์ค๋ค. ํธ๋ผ์ด์ "app", "ant", "apple"์ด๋ผ๋ ๋จ์ด๋ค์ ์ ์ฅํ๋ค๊ณ ํ์. ํธ๋ผ์ด์๋ ์ง๊ธ๊น์ง์ ๋ชจ๋ ๋จ์ด์ ์์ทจ๋ฅผ ์ ์ฅํ๋ค๊ณ ํ๋ค. ๋จ์ด์ ๊ฐ ๊ธ์๋ง๋ค, ์กด์ฌํ์ง ์์ผ๋ฉด ์..
[ํ๋ก๊ทธ๋๋จธ์ค | Programmers] ์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง ์์ฆ2 5์ ๋ฌธ์ ํ์ด
ํ๋ก๊ทธ๋๋จธ์ค์์ ์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง๋ฅผ ์งํํ๋ค ! ์๊ฐ์ด ์ ์ ํ ์๊ฐ๋์ ์กํ์ ์ฌ์ ๋กญ๊ฒ ์ฐธ์ฌํ ์ ์์๋ค. 4์๋ฌ์ ํ ๋ฒ, ์ด๋ฒ ๋ฌ์ ํ ๋ฒ์ด ์์ฆ 2 ์ฑ๋ฆฐ์ง์๋๋ฐ, ๋๋ ์ด๋ฒ ์ฑ๋ฆฐ์ง๋ฅผ ๋ ๋ฒ์งธ ๋ํ๊ฐ ๋ผ์์ผ ์ ํ๋ค. ๋ ๋ฒ์งธ ๋ํ๊น์ง ์ด 8๋ฌธ์ ์ค์ 4๋ฌธ์ ๋ง ํ์ด๋ ์ด๋ฒคํธ์ ์๋ชจํ ์ ์๋ค๋๋ฐ, ์ด๋ฒ์ 3๋ฌธ์ ๋ฅผ ํ๋ฉด์ ์์ฝ๊ฒ ์๋ชจ๋ ํ์ง ๋ชปํ๋ค. ์ด๋ฒ ๋ฌ ์ฑ๋ฆฐ์ง์์๋ 6546๋ช ์ค 53์๋ฅผ ๋ฌ์ฑํ๋ค ! ๊ฐ์ธ์ ์ผ๋ก DP๊ฐ ๊ต์ฅํ ์ฝํ ํธ์ด๋ผ๊ณ ์๊ฐํ๋๋ฐ, ์ด๋ฒ ๋ฌธ์ ์ ์์๋ ๊ตฌํ / ๊ทธ๋ฆฌ๋ / ์๋ฃ๊ตฌ์กฐ / ๊ทธ๋ํ ์ชฝ์ผ๋ก ์ถ์ ๋ผ์ 3๋ฌธ์ ๋ฅผ ๋ง์๋ค. 1. ์ฝ์์ ๊ฐ์์ ๋ง์ ์ฝ์์ ๊ฐ์๊ฐ ์ง์๋ฉด ๋ํ๊ณ , ํ์๋ฉด ๋นผ์ผ ํ๋ค. ์ฝ์์ ๊ฐ์๊ฐ ํ์์ธ ๊ฒฝ์ฐ๋ ์ ๊ณฑ์์ธ ๊ฒฝ์ฐ์ด๊ณ , ์์ ๋ฒ์๊ฐ $1000$ ์ด๋๊น $3..