
๋จ์ฒด์ฌ์ง ์ฐ๊ธฐ ๋ฌธ์ https://programmers.co.kr/learn/courses/30/lessons/1835 ๋ฌธ์ ์ค๋ช ๊ฐ์์ ๋ง์ ์นด์นด์คํ๋ ์ฆ๋ ๋จ์ฒด๋ก ์ํ์ ๋ ๋ฌ๋ค. ์ฆ๊ฑฐ์ด ์๊ฐ์ ๋ณด๋ด๊ณ ๋ง์ง๋ง์ ๋จ์ฒด์ฌ์ง์ ์ฐ๊ธฐ ์ํด ์นด๋ฉ๋ผ ์์ ์ผ๋ ฌ๋ก ๋๋ํ ์ฐ๋ค. ๊ทธ๋ฐ๋ฐ ๊ฐ์๊ฐ ์ํ๋ ๋ฐฐ์น๊ฐ ๋ชจ๋ ๋ฌ๋ผ ์ด๋ค ์์๋ก ์ค์ง ์ ํ๋๋ฐ ์๊ฐ์ด ์ค๋ ๊ฑธ๋ ธ๋ค. ๋ค์ค๋ ํ๋ก๋์ ๋๋ํ ์๊ธฐ๋ฅผ ์ํ๊ณ , ํ๋ธ๊ฐ ๋ฟ์ ๋ถ์ ๋ง์ ์ ์ด ์๋ ๋ผ์ด์ธ์ ํ๋ธ์๊ฒ์ ์ ์ด๋ ์ธ ์นธ ์ด์ ๋จ์ด์ ธ์ ์๊ธฐ๋ฅผ ์ํ๋ค. ์ฌ์ง์ ์ฐ๊ณ ๋์ ๋์์ค๋ ๊ธธ์, ๋ฌด์ง๋ ๋ชจ๋๊ฐ ์ํ๋ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด์๋ ๋ค๋ฅด๊ฒ ์๋ ๋ฐฉ๋ฒ์ด ์์ง ์์์๊น ์๊ฐํด๋ณด๊ฒ ๋์๋ค. ๊ฐ ํ๋ ์ฆ๊ฐ ์ํ๋ ์กฐ๊ฑด์ ์ ๋ ฅ์ผ๋ก ๋ฐ์์ ๋ ๋ชจ๋ ์กฐ๊ฑด์ ๋ง์กฑํ ์ ์๋๋ก ์๋ ๊ฒฝ์ฐ์ ์..

์์ด๊ณผ ์กฐํฉ ์์ด ์ ์ ์์ด์ ์ค๋ณต์์ด n๊ฐ ์ค r๊ฐ๋ฅผ ๋ฝ์ ์์๋ฅผ ์ ํด ๋์ดํ๋ ๊ฒฝ์ฐ์ด๋ค. ์์ ๊ทธ๋ฆผ์ฒ๋ผ A, B, C ์ธ๊ฐ์ง ์์๊ฐ ์์ ๋, 2๊ฐ๋ฅผ ๋ฝ์ ์์๋ฅผ ์ ํ๋ ๊ฒ์ 3P2๋ผ๊ณ ํ๋ค. ์๋์ ๊ฐ์ ๊ฒฝ์ฐ์ ์๊ฐ ๋์ค๋ฏ๋ก ์ด 6๊ฐ์ง ์ด๋ค. ์์ด์ P(Permutation)๋ก ํํํ๋ฉฐ ์์ ๋ค์๊ณผ ๊ฐ๋ค. $$ {}n\mathrm{P}{r} = \frac{n!}{(n-r)!} $$ ์ค๋ณต ์์ด์ด๋ผ๋ ํน๋ณํ ๊ฒฝ์ฐ๋ ์์ด ์ค ๊ฐ์ ์ข ๋ฅ์ ๊ฒ์ ๋ค์ ๋ฝ์ ์ ์๋ ๊ฒฝ์ฐ๋ฅผ ๋งํ๋ค. ์ค๋ณต ์์ด์ Π๋ก ํํํ๋ฉฐ ์์ ๋ค์๊ณผ ๊ฐ๋ค. $$ {n}\mathrm{\pi}{r} = n^r $$ ๊ตฌํ ์์ด // ์ง์ ๊ตฌํ void swap(vector& set, int a, int b){ int tmp = set[a]; ..
Comment