luogu#P11405. [RMI 2020] 秘鲁 / Peru
[RMI 2020] 秘鲁 / Peru
题目背景
译自 8th Romanian Master of Informatics, RMI 2020 D1T3。。
题目描述
这是一道(函数式)交互题。
有 只甲虫在桌面上排成一行,从左到右编号为 。第 只甲虫的体力为 。
每次可以选择连续的至多 只甲虫,用 的力量去击打它们。被击打的甲虫,若体力不大于 ,则会死亡,否则无事发生。死亡的甲虫会留在原地,可以击打死亡的甲虫。
可以多次击打甲虫,每次 的大小可以不同。
定义 为:杀死最左边的 只甲虫,需要力量和的最小值。对于 ,求出 。
为了减小输出量,你只需要求出 $\displaystyle \left(\sum_{1\le i\le N} f(i)\cdot 23^{N-i}\right)\bmod (10^9+7)$。
实现细节
你不需要,也不应该实现 main 函数。
你需要实现以下的函数:
int solve(int N, int K, int S[]);
交互库会调用 solve
函数恰好一次。参数的含义:
N
:甲虫数量。K
:一次击打最多击打的连续甲虫数。S
:每只甲虫的体力。
返回一个整数表示 $\displaystyle \left(\sum_{1\le i\le N} f(i)\cdot 23^{N-i}\right)\bmod (10^9+7)$。
输入格式
Sample grader 按照如下格式读取输入:
第一行,两个正整数 ;
第二行, 个正整数 。
输出格式
Sample grader 输出一个整数,表示选手返回的答案。
8 3
3 2 9 8 7 11 3 4
720026253
提示
样例解释
的值分别为 。
数据范围
对于 的数据,保证:
- ;
- 。
子任务编号 | 得分 | |
---|---|---|