307801: CF1419C. Killjoy

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Killjoy

题意翻译

题目给出 $ t $ 组数据,对于每一组数据: 一种新型病毒感染了Codeforces,他的感染机制是:如果未感染者B在某场比赛开始前或开始后与感染者A积分相同,那么他将会被感染。一旦被感染,则无法被治愈。 有 $ n $ 个用户和Killjoy在Codeforces,最初只有Killjoy被感染。Killjoy的初始积分为 $ x $ ,所有用户都有一个初始的积分,第 $ i $ 个用户积分为 $ a_i $ 。 比赛定期在Codeforces举行,每场比赛可有任意数量用户参加,Killjoy不能参加。每场比赛后参与的用户积分会升降一个整数,且所有参与用户变化的总分和为0。 问至少需要几场比赛可将所有用户感染?

题目描述

A new agent called Killjoy invented a virus COVID-2069 that infects accounts on Codeforces. Each account has a rating, described by an integer (it can possibly be negative or very large). Killjoy's account is already infected and has a rating equal to $ x $ . Its rating is constant. There are $ n $ accounts except hers, numbered from $ 1 $ to $ n $ . The $ i $ -th account's initial rating is $ a_i $ . Any infected account (initially the only infected account is Killjoy's) instantly infects any uninfected account if their ratings are equal. This can happen at the beginning (before any rating changes) and after each contest. If an account is infected, it can not be healed. Contests are regularly held on Codeforces. In each contest, any of these $ n $ accounts (including infected ones) can participate. Killjoy can't participate. After each contest ratings are changed this way: each participant's rating is changed by an integer, but the sum of all changes must be equal to zero. New ratings can be any integer. Find out the minimal number of contests needed to infect all accounts. You can choose which accounts will participate in each contest and how the ratings will change. It can be proven that all accounts can be infected in some finite number of contests.

输入输出格式

输入格式


The first line contains a single integer $ t $ $ (1 \le t \le 100) $ — the number of test cases. The next $ 2t $ lines contain the descriptions of all test cases. The first line of each test case contains two integers $ n $ and $ x $ ( $ 2 \le n \le 10^3 $ , $ -4000 \le x \le 4000 $ ) — the number of accounts on Codeforces and the rating of Killjoy's account. The second line of each test case contains $ n $ integers $ a_1, a_2, \dots, a_n $ $ (-4000 \le a_i \le 4000) $ — the ratings of other accounts.

输出格式


For each test case output the minimal number of contests needed to infect all accounts.

输入输出样例

输入样例 #1

3
2 69
68 70
6 4
4 4 4 4 4 4
9 38
-21 83 50 -59 -77 15 -71 -78 20

输出样例 #1

1
0
2

说明

In the first test case it's possible to make all ratings equal to $ 69 $ . First account's rating will increase by $ 1 $ , and second account's rating will decrease by $ 1 $ , so the sum of all changes will be equal to zero. In the second test case all accounts will be instantly infected, because all ratings (including Killjoy's account's rating) are equal to $ 4 $ .

Input

题意翻译

题目给出 $ t $ 组数据,对于每一组数据: 一种新型病毒感染了Codeforces,他的感染机制是:如果未感染者B在某场比赛开始前或开始后与感染者A积分相同,那么他将会被感染。一旦被感染,则无法被治愈。 有 $ n $ 个用户和Killjoy在Codeforces,最初只有Killjoy被感染。Killjoy的初始积分为 $ x $ ,所有用户都有一个初始的积分,第 $ i $ 个用户积分为 $ a_i $ 。 比赛定期在Codeforces举行,每场比赛可有任意数量用户参加,Killjoy不能参加。每场比赛后参与的用户积分会升降一个整数,且所有参与用户变化的总分和为0。 问至少需要几场比赛可将所有用户感染?

加入题单

算法标签: