P16889 [GKS 2022 #F] Sort the Fabrics
题目描述
一块织物由以下 $3$ 个属性表示:
- 颜色($C$),一个由小写英文字母组成的字符串,表示织物的颜色。
- 耐久度($D$),一个整数,表示织物的耐久度。
- 唯一标识符($U$),一个整数,表示织物的 ID。
Ada 和 Charles 在 Kick Start 织物工厂工作。每天他们会收到 $N$ 块织物,其中一人必须对它们进行排序。他们使用以下标准进行排序:
- Ada 按颜色($C$)的字典序递增顺序排序。
- Charles 按耐久度($D$)的升序排序。
- 当出现并列时,他们按唯一标识符($U$)的升序打破平局。
给定 $N$ 块织物,请统计有多少块织物在 Ada 排序和 Charles 排序后处于相同的位置。
输入格式
输入的第一行给出测试用例的数量 $T$。接下来有 $T$ 个测试用例。
每个测试用例的第一行包含一个整数 $N$,表示织物的数量。
接下来的 $N$ 行,每行包含一个字符串 $C_i$、一个整数 $D_i$ 和一个整数 $U_i$,分别表示第 $i$ 块织物的颜色、耐久度和唯一标识符。
输出格式
对于每个测试用例,输出一行,格式为 `Case #x: y`,其中 $x$ 是测试用例编号(从 $1$ 开始),$y$ 是无论按颜色排序还是按耐久度排序都处于相同位置的织物数量。
说明/提示
在样例 #1 中,按颜色排序时,用唯一标识符表示的织物顺序为 $1$ 和 $2$。按耐久度排序时,织物顺序为 $2$ 和 $1$。因此,没有织物在按颜色或耐久度排序时处于相同位置。
在样例 #2 中,按颜色排序时,用唯一标识符表示的织物顺序为 $1$ 和 $2$。按耐久度排序时,织物顺序也是 $1$ 和 $2$。因此,有 $2$ 块织物处于相同位置。注意,两块织物的耐久度相同,所以 Charles 排序时,因为标识符更小,他认为织物 $1$ 在前面。
在样例 #3 中,由于只有 $1$ 块织物,无论按颜色还是耐久度排序,它的位置都保持不变。
### 限制条件
$1 \le T \le 100$。
$1 \le \text{字符串 } C_i \text{ 的长度} \le 10$。
字符串 $C_i$ 仅由小写英文字母组成。
没有两块织物具有相同的 $U_i$。
**测试集 1**
$1 \le N \le 2$。
$1 \le D_i \le 2$。
$1 \le U_i \le 2$。
**测试集 2**
$1 \le N \le 10^3$。
$1 \le D_i \le 10^2$。
$1 \le U_i \le 10^3$。
翻译由 DeepSeek V4 Pro 完成