A134859.午枫的传话游戏

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:256MB

题目描述

班级里有 nn 位同学,小午给每位同学安排了一个数字,第 ii 位同学对应的数字为 aia_i。现在有如下规则:

如果两位同学对应数字的绝对差值恰好为 11,那么他们之间就可以直接传话。如果两位同学不能直接传话,但可以通过其他同学间接传话,也认为他们能够互相交流。

小午希望最后任意两位同学之间都能够完成传话。现在他可以手动增加一些“可以直接传话”的关系。请你求出:最少还需要增加多少组关系,才能让所有同学之间都能够互相传话。

输入格式

第一行输入一个整数 TT,表示测试数据组数。

对于每组测试数据:

第一行输入一个整数 nn,表示同学人数。

第二行输入 nn 个整数 aia_i,表示每位同学对应的数字。

输出格式

对于每组测试数据,输出一行一个整数,表示最少需要手动增加的关系数量。

输入输出样例

  • 输入#1

    2
    3
    1 2 3
    2
    1 1

    输出#1

    0
    1

说明/提示

【样例解释】

样例 1 解释

对应数字分别为:1 2 3

因为:

  • 数字 1122 的差值为 11
  • 数字 2233 的差值为 11

所以所有同学之间已经能够互相传话,不需要再增加关系。

样例 2 解释

对应数字分别为:1 1

两人的数字差值为 00,无法直接传话。

因此至少需要手动增加 11 组关系。

【数据范围】

对于 100%100\% 的测试数据,满足:

1T10001 \le T \le 1000

1n2×1051 \le n \le 2\times10^5

1ai2×1051 \le a_i \le 2\times10^5

单个测试文件中所有 nn 的总和不超过 2×1052\times10^5

输入解题思路,AI测评打分。不知道怎么写?

首页