Codeforces Round 671 (Div. 2) |
---|
Закончено |
Новый агент Киллджой изобрела вирус COVID-2069, который заражает аккаунты на Codeforces. Каждый аккаунт имеет рейтинг — целое число (возможно, отрицательное или очень большое).
Аккаунт Киллджой имеет рейтинг $$$x$$$ и изначально заражён. Рейтинг её аккаунта не изменяется. Кроме её аккаунта существуют ещё $$$n$$$ аккаунтов, пронумерованных целыми числами от $$$1$$$ до $$$n$$$. Рейтинг $$$i$$$-го аккаунта равен $$$a_i$$$. Любой заражённый аккаунт (изначально это только аккаунт Киллджой) моментально заражает любой здоровый аккаунт, если их рейтинги равны. Заражения могут произойти в самом начале (перед любыми изменениями рейтингов) и после каждого изменения рейтинга. Если аккаунт был заражён, то он не может быть излечен.
На Codeforces регулярно проходят контесты. В каждом контесте участвуют любые из $$$n$$$ аккаунтов (в том числе и заражённые). Киллджой не может участвовать в контестах. В результате контеста рейтинг участников пересчитывается следующим образом: рейтинг каждого участника может измениться на любое целое число, но сумма изменений рейтингов должна быть равна нулю. Новый рейтинг каждого участника может быть любым целым числом.
Найдите, за какое минимальное количество контестов могут заразиться все аккаунты. Вы можете выбирать, какие аккаунты участвуют в контестах, и какими будут изменения рейтингов участников каждого контеста.
Можно доказать, что за конечное количество контестов могут заразиться все аккаунты.
В первой строке содержится единственное целое число $$$t$$$ $$$(1 \le t \le 100)$$$ — количество наборов входных данных. Следующие $$$2t$$$ строк содержат описания наборов входных данных.
В первой строке каждого набора входных данных содержатся два целых числа $$$n$$$ и $$$x$$$ ($$$2 \le n \le 10^3$$$, $$$-4000 \le x \le 4000$$$) — количество аккаунтов на Codeforces и рейтинг аккаунта Киллджой.
Во второй строке каждого набора входных данных содержатся $$$n$$$ целых чисел $$$a_1, a_2, \dots, a_n$$$ $$$(-4000 \le a_i \le 4000)$$$ — изначальные рейтинги других аккаунтов на Codeforces.
Для каждого набора входных данных выведите минимальное количество контестов, за которое могут заразиться все аккаунты.
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 0 2
В первом наборе входных данных за один контест рейтинг каждого из аккаунтов может стать равен $$$69$$$. Рейтинг первого участника увеличится на $$$1$$$, а второго — уменьшится на $$$1$$$. При этом сумма изменений рейтингов будет равна нулю.
Во втором наборе входных данных все аккаунты сразу же будут заражены, потому что рейтинг каждого аккаунта (включая аккаунт Киллджой) равен $$$4$$$.
Название |
---|