반응형
보통 팩토리얼의 경우 숫자가 너무 커지기 때문에 정확한 값을 계산할 수 없는 경우가 많습니다.
하지만 팩토리얼 값을 소인수 분해했을 때, 지수가 어떻게 되는 지는 계산이 가능합니다.
다음 링크에서 자세한 설명을 보실 수 있습니다.
https://janmr.com/blog/2010/10/prime-factors-of-factorial-numbers/
특정 소수에 대한 지수를 계산하는 코드는 다음과 같습니다.
import math def factorialExp(n, p): tRet = 0 tVal = int(math.log(n, p)) for i in xrange(1, tVal+1): tRet += n // p**i return tRet
반응형
'알고리즘 (기초)' 카테고리의 다른 글
Pell's Equation (0) | 2020.04.28 |
---|---|
Combination 소인수 분해 (0) | 2019.10.04 |
유클리드 호제법을 이용한 최대공약수 (GCD) 구하기 (0) | 2019.08.28 |
오일러 피 함수 (0) | 2018.08.30 |
에라토스테네스의 체 (0) | 2018.08.17 |