如何在O(n)O(n)O(n)的时间复杂度内计算出Cnk mod (109+7)(k≤n,n≤105)C_n^k\bmod (10^9+7) (k\leq n,n\leq 10^5)Cnkmod(109+7)(k≤n,n≤105)
我试过这些方法,都没用
直接用乘除法计算:如果计算完之后再取模的话会爆炸,一边计算一边取模的话则商的余数不等于余数的商。
通过递归计算Cnk=Cn−1k+Cn−1k−1C_n^k=C_{n-1}^k+C_{n-1}^{k-1}Cnk=Cn−1k+Cn−1k−1:时间复杂度爆炸
递归计算完AnkA_n^kAnk再除:商的余数不等于余数的商,所以不行。
所以各位大佬有更好地办法吗?