P=a1!×a2!×⋯×an! 的因子个数,等于把 P 唯一分解后每个质因数指数加 1 再相乘。
设 M=maxai。先线性筛出 [1,M] 中的质数。
令 pre[t] 表示有多少个阶乘包含整数 t,即有多少个 ai≥t。这可以用差分数组 O(n+M) 求出。
对每个质数 p,枚举它的倍数 i,用递推 pw[i]=pw[i/p]+1 得到 i 中 p 的指数,再累加 pre[i]×pw[i],即得到 P 中 p 的总指数。
编码模块要把 n 组独立排列方案拼接:第 i 组的方案数为 ai!,总方案数为 P=a1!×a2!×⋯×an!。验收时需要统计 P 有多少个正因子,作为密钥空间评估。由于答案可能很大,请对 1000000007 取模。
请输出取模后的结果。
约束:1≤n≤200000,1≤ai≤1000000。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册