测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A13522. XXXXX

编程题 普及/提高-

题目描述

Ehab loves number theory, but for some reason he hates the number $x$ . Given an array $a$ , find the length of its longest subarray such that the sum of its elements isn't divisible by $x$ , or determine that such subarray doesn't exist.

An array $a$ is a subarray of an array $b$ if $a$ can be obtained from $b$ by deletion of several (possibly, zero or all) elements from the beginning and several (possibly, zero or all) elements from the end.

输入格式

The first line contains an integer $t$ $(1 \le t \le 5)$ — the number of test cases you need to solve. The description of the test cases follows.

The first line of each test case contains 2 integers $n$ and $x$ ( $1 \le n \le 10^5$ , $1 \le x \le 10^4$ ) — the number of elements in the array $a$ and the number that Ehab hates.

The second line contains $n$ space-separated integers $a_1$ , $a_2$ , $\ldots$ , $a_{n}$ ( $0 \le a_i \le 10^4$ ) — the elements of the array $a$ .

输出格式

For each testcase, print the length of the longest subarray whose sum isn't divisible by $x$ . If there's no such subarray, print $-1$ .

输入输出样例

输入 #1
3
3 3
1 2 3
3 4
1 2 3
2 2
0 6
输出 #1
2
3
-1

说明/提示

In the first test case, the subarray $[2,3]$ has sum of elements $5$ , which isn't divisible by $3$ .

In the second test case, the sum of elements of the whole array is $6$ , which isn't divisible by $4$ .

In the third test case, all subarrays have an even sum, so the answer is $-1$ .
上一题 去做题 下一题