#3636. 模拟10截取纸带 (race)
模拟10截取纸带 (race)
截取纸带 (race)
题目描述
一条纸带被依次分成 格,第 格的墨量为 。
现在要从纸带上截取一段非空的连续区间 。只有当这段区间的墨量总和不是 的倍数时,它才可以被保留。
求可以保留的最长区间长度。若不存在符合条件的区间,输出 -1。
输入格式
在文件 race.in 中读入。
第一行输入一个整数 ,表示数据组数。
每组数据包含两行:
- 第一行输入两个整数 ;
- 第二行输入 个整数 。
输出格式
在文件 race.out 中输出。
对每组数据输出一行一个整数,表示最长合法区间的长度;若不存在合法区间,输出 -1。
样例
样例输入 #1
3
3 3
1 2 3
3 4
1 2 3
2 2
0 6
样例输出 #1
2
3
-1
样例 1 解释: 第一组数据中,整条纸带的墨量和为 6,是 3 的倍数;区间 的和为 5,不是 3 的倍数,因此最长合法区间长度为 2。第三组数据中所有元素都是 2 的倍数,所以不存在合法区间。
数据范围
对于全部数据: ,,
| 测试点 | 分值 | 特殊限制 |
|---|---|---|
| 1 | 10 | 所有 都是 的倍数 |
| 2 ~ 3 | 20 | 所有 都不是 的倍数 |
| 4 ~ 5 | ||
| 6 ~ 7 | ||
| 8 ~ 10 | 30 | 无特殊限制 |
相关
在下列比赛中: