코딩/백준 (Python)
백준 11401번: 이항 계수 3 (Python)
접근 이 문제에 분할 정복 방법을 어떻게 적용해야 하나 고민하다가 결국 힌트를 찾아본 결과 '페르마의 소정리'를 이용한다는 것을 알게 되었다. 페르마의 소정리에 대해선 페르마의 소정리에서 개념 이해에 도움을 받았다. 이항 계수는 아래와 같은 식으로 구할 수 있는데, 분자와 분모를 모두 1,000,000,007로 나눌 경우 분모가 0이 되는 경우가 발생할 수 있기 때문에 페르마의 소정리 \( a^{p - 1} \equiv 1 (mod\ p) \) 를 이용하여 거듭제곱으로 표현하게 된다. $$ \binom{n}{k}= _{n}\textrm{C}_{k} = \frac{n!}{(n - k)!k!} $$ $$ \frac{1}{(n-k)!k!}\%p = ({(n-k)!k!})^{-1}\%p = ((n-k)!k!)^..
2021. 4. 2. 01:18
최근댓글