补全:组合数查询
补全 C(n, k):fact[n]·inv_fact[k]·inv_fact[n-k],每乘一次取一次模。补全后输出 C(10^6, k) 对 k=0..10^6 求和模 10^9+7。
本节模型:fact、inv_fact 两个全局数组开到 10^6,prepare() 顺着乘出阶乘、倒着推出阶乘逆元,之后 C(n, k) 都是 O(1)。
(本题用 g++ -std=c++17 -O0 编译。)
补全 C(n, k):fact[n]·inv_fact[k]·inv_fact[n-k],每乘一次取一次模。补全后输出 C(10^6, k) 对 k=0..10^6 求和模 10^9+7。
本节模型:fact、inv_fact 两个全局数组开到 10^6,prepare() 顺着乘出阶乘、倒着推出阶乘逆元,之后 C(n, k) 都是 O(1)。
(本题用 g++ -std=c++17 -O0 编译。)
全部评论