题目描述
我们把一个数的 6-roundness 值定义为它在 6 进制下末尾 0 的个数。
给你一个长度为 n 的数列,要求你从中选出 k 个数,使得这些选出的数的积的 6-roundness 值最大。
输入格式
第一行包括两个正整数 n 和 k。
第二行包括 n 个空白分隔的数 a1,a2,…,an。
输出格式
输出一个整数,是选择 k 个数并作积的最大 6-roundness 值。
3 2
18 4 12
3
5 3
9 16 3 9 9
4
3 3
9 77 13
0
提示
【样例 1 解释】
在第一个例子中,有三种选法。
{18,4} 的积是 (200)6,6-roundness 值是 2;
{4,12} 的积是 (120)6,6-roundness 值是 1;
{18,12} 的积是 (1000)6,6-roundness 值是 3。
【样例 2 解释】
第二个例子中选法 {9,16,9} 的积是 (10000)6,6-roundness 值是 4。
【样例 3 解释】
第三个例子中所有的选法的积的 6-roundness 值都是 0。
【子任务】
| 测试点编号 |
n |
k |
ai |
| 1∼2 |
≤200 |
≤100 |
一定可以被表示为 6 的幂次 |
| 3 |
^ |
在 {2,3,6} 中取值 |
| 4 |
=10 |
=5 |
任意 k 个 ai 之积不超过 1018 |
| 5 |
=25 |
=12 |
只含有质因子 2 或质因子 3 |
| 6 |
^ |
只含有质因子 2 和质因子 3 |
| 7 |
无限制 |
| 8 |
≤200 |
≤100 |
^ |
| 9 |
^ |
| 10 |
对于 100% 的数据,1≤n≤200,1≤k≤100,2≤ai≤109。