题目描述
样例
用 τ(x) 表示正整数 x 的正因数个数。例如,6 的正因数为 1,2,3,6,所以 τ(6)=4。
给定一个长度为 n 的正整数序列 a1,a2,…,an 和一个正整数 k。
你需要选择一个长度为 n 的正整数序列 b1,b2,…,bn,使得 ∏i=1nbi 是 k 的因数,并最大化
i=1∏nτ(aibi).
输出这个最大值对 998244353 取模的结果。最大值在取模前比较。
输入格式
从标准输入读入。
第一行包含两个正整数 n,k。
第二行包含 n 个正整数 a1,a2,…,an。
输出格式
向标准输出输出一行一个整数,表示最大值对 998244353 取模的结果。
数据范围
对于所有数据,1≤n≤3×105,1≤ai,k≤3×105。
子任务
| 编号 |
分值 |
缩减范围 |
| 1 |
5 |
k=1 |
| 2 |
20 |
n≤5 |
| 3 |
15 |
k=2 |
| 4 |
30 |
n≤104 ai≤104 k≤104 |
| 5 |
— |
样例 1
3 60
8 243 250
2304
样例 1 说明
可以选择 b=(15,4,1),其乘积为 60。此时 aibi 分别为 120,972,250,正因数个数分别为 16,18,8,乘积为 2304,达到最大值。