跳格子
题号:NC54391
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 64 M,其他语言128 M
64bit IO Format: %lld

题目描述

        Reverie最近迷上了跳格子的游戏,地面上有个格子排成一排,编号为1到n,Reverie从第一个格子开始,必须跳到最后一个格子上,她每次可以跳s到t个格子。每个格子都有一个权值,跳到这个格子上即可获得这个权值(包括第一个和最后一个格子)。
        Reverie想知道,她能获得的权值最大是多少。

输入描述:

第一行一个正整数,表示测试数据的组数。
每组数据第一行三个正整数n, s, t, 表示格子的数量和Reverie每次跳格子数量的下限和上限。
之后一行n个正整数,表示每个格子的权值。

输出描述:

对于每组数据,一行内输出一个正整数,表示Reverie能获得的最大权值。
如果Reverie没办法跳到最后一个格子,输出-1.
示例1

输入

复制
2
6 2 3
1 2 3 4 5 6
5 3 3
1 2 3 4 5

输出

复制
11
-1