6๊ฑด์ ํญ๋ชฉ
Sublime Text3๋? ๊ฐ๋จํ ์ฝ๋๋ฅผ ์คํํ๊ธฐ์ ์ข์ ๋งค์ฐ ๊ฐ๋ฒผ์ด IDE์ ๋๋ค.์ฝ๋ฉํ ์คํธ ๊ณต๋ถ๋ฅผ ํ๋ฉด์ ๋ฌด๊ฑฐ์ด ํ๋ก๊ทธ๋จ์ ์งค ์ผ์ ์๊ธฐ ๋๋ฌธ์ ์ฝ๋ฉํ ์คํธ ๊ณต๋ถ์ ๋งค์ฐ ์ ํฉํฉ๋๋ค! ์ค์น ๋ฐฉ๋ฒ Sublime Text3 ์ค์น ๋งํฌ๋ฅผ ํด๋ฆญํด์ OS X๋ฒ์ ์ ํด๋ฆญํ์ฌ ๋ค์ด๋ก๋ํฉ๋๋ค ...
๋ฉ๋ชจ์ด์ ์ด์ ์ด๋? ์ค๋ณต์ ์ผ๋ก ๊ณ์ฐํ๋ ๊ฐ๋ค์ ์ ์ฅํด ๋ ์ผ๋ก์จ ๋ถํ์ํ ์ค๋ณต ๊ณ์ฐ์ ๋ง๋ ๋ฐฉ๋ฒ์ ๋๋ค.ํผ๋ณด๋์น ์์ด ๊ตฌํ์์ ์ด ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ ์์๋ฅผ ์ ํ์ธํ ์ ์์ต๋๋ค. ๋ฌธ์ BOJ 10870 ๋ฌธ์ 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144โฆ์ผ๋ก ์ด์ด๋๊ฐ๋ ํผ๋ณด๋์น ์์ด์์ ์ ๋ ฅ๊ฐ์ ๋ค์ด์จ ์ซ์๋ฒ์งธ์ ํผ๋ณด๋์น ์์ ๊ฐ์ ๊ตฌํ๋ฉด ๋๋ ๋ฌธ์ ์ ๋๋ค.
๋ฌธ์ BOJ 4779 ๋ฌธ์ -๊ฐ 3N๊ฐ ์๋ ๋ฌธ์์ด์์ ์์ํ๋ค. ๋ฌธ์์ด์ 3๋ฑ๋ถ ํ ๋ค, ๊ฐ์ด๋ฐ ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊พผ๋ค. ์ด๋ ๊ฒ ํ๋ฉด, ์ (๋ฌธ์์ด) 2๊ฐ๊ฐ ๋จ๋๋ค. ์ด์ ๊ฐ ์ (๋ฌธ์์ด)์ 3๋ฑ๋ถ ํ๊ณ , ๊ฐ์ด๋ฐ ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊พผ๋ค. ์ด ๊ณผ์ ์ ๋ชจ๋ ์ ์ ๊ธธ์ด๊ฐ 1์ผ๋ ๊น์ง ๊ณ์ ํ๋ค.
์กฐํฉ ์๊ณ ๋ฆฌ์ฆ์ด๋? n๊ฐ์ ์ซ์ ์ค r๊ฐ์ ์๋ค์ ๋ฝ๋ ๋ชจ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๋ ๊ฒ์ ๋๋ค.์์ด ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ค๋ฅธ ์ ์ ์๋ฅผ ๋ฝ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ [1, 3, 2]์ [2, 1, 3]์ ๊ฒฝ์ฐ์ ์๋ฅผ ๋์ผํ๊ฒ ํ๋๋ก ๋ณด๊ณ ์ผ๋ค๋ ๊ฒ์ ๋๋ค. ๊ณต์ : _nC_r = \frac{_nP_r}{r!} = \frac{n \cdot (n-1) \ \cdots \ (n-r+1)}{r!} ์์ : [1, 2, 3, 4, 5] 5๊ฐ ์ค 3๊ฐ๋ฅผ ๋ฝ๋ ์กฐํฉ์ _5C_3์ผ๋ก ๋ํ๋ผ ์ ์์ต๋๋ค.
์์ด ์๊ณ ๋ฆฌ์ฆ์ด๋? n๊ฐ์ ์์ ์ค์์ r๊ฐ๋ฅผ ๋์ดํ๋ ๋ชจ๋ ๊ฒฝ์ฐ๋ฅผ ์ดํด๋ณด๋ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. ์กฐํฉ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๋ค๋ฅธ ์ ์ ์์ด์ ์์์ ๊ฐ๋ ์ด ์กด์ฌํ๋ฏ๋ก [1, 3, 2]์ [2, 1, 3]์ ๊ฒฝ์ฐ์ ์๋ฅผ ๋ค๋ฅธ ๊ฒฝ์ฐ๋ก ์ทจ๊ธํ๊ณ ์ผ๋ค๋ ๊ฒ์ ๋๋ค. ๊ณต์ : _nP_r = n \cdot (n-1) \ \cdots \ (n-r+1) ์์ : [1, 2, 3, 4, 5] 5๊ฐ ์ค 3๊ฐ๋ฅผ ๋ฝ๋ ์์ด์ _5P_3์ผ๋ก ๋ํ๋ผ ์ ์์ต๋๋ค.
sorted() ์ฌ์ฉ๋ฒ sorted()๋ ์ธ์๊ฐ์ผ๋ก ๋ฃ์ ๋ฐฐ์ด์ ์ ๋ ฌํ์ฌ returnํด์ฃผ๋ python์ ํจ์์ ๋๋ค. sorted(iterable, key, reverse) iterable: ๋ฆฌ์คํธ๊ฐ์ด ์ํํ ์ ์๋ ๊ฐ์ฒด(map, list ๋ฑ๋ฑ) key : ํจ์๋ฅผ ๋ฃ์ด ์ฌ์ฉ์ํ๋ ์ ๋ ฌ์ด ๊ฐ๋ฅํ๊ฒ ํจ reverse : ์ด ์ต์ ์ด True๋ฉด ๊ฒฐ๊ณผ๋ฅผ ์ญ์์ผ๋ก ๋ฐํ key ์ต์ ์ฃผ๋ก lambda๋ฅผ ์ฌ์ฉํ๊ณ , ๊ธฐ๋ณธ๊ฐ์ lambda x : x๋ผ๊ณ ์๊ฐํ ์ ์์ต๋๋ค.