题目描述
给出一个长度为 n 的数列 A=a1,a2...an,求:A 中是否存在一个长度为 k 的连续子数列 As,满足 As 中的元素之和恰好等于 m。
输入格式
第一行:三个整数 n,k,m,含义与题目中相同。
第二行:n 个整数 a1,a2...an,表示数列 A。
输出格式
若存在满足条件的连续子数列 As,则输出 As 中首个元素在 A 中的位置;否则输出 −1。题目保证每组输入数据至多存在一个满足条件的 As。
样例
5 3 7
4 3 1 2 4
3
4 2 3
2 2 3 3
-1
样例 1 解释
数列 A 的长度为 5,需要从中找出长度为 3 的连续子数列,使得子数列的和为 7。可知 A3+A4+A5=1+2+4=7,满足条件,因此输出 3。
样例 2 解释
数列 A 的长度为 4,需要从中找出长度为 2 的连续子数列,使得子数列的和为 3。可知不存在满足条件的子数列,因此输出 −1。
数据范围与约束
对于 50% 的数据,1≤k≤n≤100;1≤ai≤100;1≤m≤∑ai。
对于 100% 的数据,1≤k≤n≤106;1≤ai≤109;1≤m≤∑ai。