首页 > 试题广场 >

游游的数组询问

[编程题]游游的数组询问
  • 热度指数:560 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
游游有一个长度为 n 的数组,每个数的权值为它的质因子个数。现在游游想要删除一段长度刚好为 k 的子数组,删除后需要使剩下的数的权值和最大。问这个权值和是多少?

输入描述:
第一行两个整数 n( 1 \leq n \leq 10^5),k(1 \leq k \leq n)
接下来一行 n 个正整数 a_i(1\le a_i \le 10^4)


输出描述:
输出一个整数,表示答案。
示例1

输入

5 2
6 2 4 1 3

输出

4

说明

1没有质因子,权值为0。
2质因子是2,权值为1。
3质因子是3,权值为1。
4质因子是2,权值为1。
6的质因子是2和3,权值为2。
删除子数组 [4,1],剩下的数是6,2,3,权值总和为4。

这道题你会答吗?花几分钟告诉大家答案吧!