B. 模拟10截取纸带 (race)

    传统题 1000ms 256MiB

模拟10截取纸带 (race)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

截取纸带 (race)

题目描述

一条纸带被依次分成 nn 格,第 ii 格的墨量为 aia_i

现在要从纸带上截取一段非空的连续区间 aL,aL+1,,aRa_{L},a_{L+1},\dots,a_{R}。只有当这段区间的墨量总和不是 xx 的倍数时,它才可以被保留。

求可以保留的最长区间长度。若不存在符合条件的区间,输出 -1

输入格式

在文件 race.in 中读入。 第一行输入一个整数 TT,表示数据组数。

每组数据包含两行:

  • 第一行输入两个整数 n,xn,x
  • 第二行输入 nn 个整数 a1,a2,,ana_{1},a_{2},\dots,a_{n}

输出格式

在文件 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 的倍数;区间 [2,3][2,3] 的和为 5,不是 3 的倍数,因此最长合法区间长度为 2。第三组数据中所有元素都是 2 的倍数,所以不存在合法区间。

数据范围

对于全部数据: 1T5, 1n105\red{ 1 \leq T \leq 5,\ 1 \leq n \leq 10^{5}}, 1x104\red{\ 1 \leq x \leq 10^{4}}, 0ai104\red{\ 0 \leq a_{i} \leq 10^{4}}

测试点 分值 特殊限制
1 10 所有 aia_i 都是 xx 的倍数
2 ~ 3 20 所有 aia_i 都不是 xx 的倍数
4 ~ 5
6 ~ 7
8 ~ 10 30 无特殊限制

少年宫CSPJ第十轮模拟

未参加
状态
已结束
规则
IOI
题目
5
开始于
2026-8-28 9:00
结束于
2026-8-28 12:00
持续时间
3 小时
主持人
参赛人数
44