#P13312. [GCJ 2012 Qualification] Dancing With the Googlers

[GCJ 2012 Qualification] Dancing With the Googlers

Description

你正在观看一场节目,Googler(Google 员工)们在跳舞,每位舞者会被三位评委分别打分,得到一个分数组成的三元组。每个三元组由三个 001010 的整数分数组成。评委们的打分标准极为接近,因此如果一个三元组中有两个分数相差 22,就会被认为是令人惊讶的。不会出现分数之间相差超过 22 的三元组。

例如:(8,8,8)(8, 8, 8)(7,8,7)(7, 8, 7) 都不是令人惊讶的。(6,7,8)(6, 7, 8)(6,8,8)(6, 8, 8) 都是令人惊讶的。(7,6,9)(7, 6, 9) 永远不会出现。

某位 Googler 的总分就是其分数组成的三元组的和。该 Googler 的最佳成绩是三元组中最大的分数。现在,给定每位 Googler 的总分,以及所有令人惊讶的三元组的数量,你需要求出最多有多少个 Googler 的最佳成绩可以达到至少 pp 分。

例如,假设有 66 位 Googler,他们的总分分别为 2929202088181818182121。你记得有 22 个三元组是令人惊讶的,你想知道有多少 Googler 的最佳成绩能达到 88 分或更高。

在这些总分下,且已知有两个三元组是令人惊讶的,可能的三元组如下:

10 9 10
6 6 8 (*)
2 3 3
6 6 6
6 6 6
6 7 8 (*)

带有(*)标记的是令人惊讶的三元组。这样,最多有 33 位 Googler 至少有一项分数达到 88 分。不存在比 33 更大的可能,因此答案为 33

Input Format

输入的第一行为测试用例数 T\mathbf{T}。接下来有 T\mathbf{T} 个测试用例,每个测试用例占一行,包含若干个整数,以空格分隔。第一个整数为 N\mathbf{N},即 Googler 的人数;第二个整数为 S\mathbf{S},即令人惊讶的三元组数量;第三个整数为 p\mathbf{p},即题面所述要求的最佳成绩。接下来 N\mathbf{N} 个整数 ti\mathbf{t_i},分别表示每位 Googler 的总分。

Output Format

对于每个测试用例,输出一行,格式为 "Case #xx: yy",其中 xx 为测试用例编号(从 11 开始),yy 为最多有多少 Googler 的最佳成绩可以达到至少 pp 分。

4
3 1 5 15 13 11
3 0 8 23 22 21
2 1 1 8 0
6 2 8 29 20 8 18 18 21
Case #1: 3
Case #2: 2
Case #3: 1
Case #4: 3

Hint

限制条件

  • 1T1001 \leq T \leq 100
  • 0SN0 \leq S \leq N
  • 0p100 \leq p \leq 10
  • 0ti300 \leq t_i \leq 30
  • 至少有 SStit_i 满足 2ti282 \leq t_i \leq 28

测试集 1(10 分,结果可见)

  • 1N31 \leq N \leq 3

测试集 2(10 分,结果隐藏)

  • 1N1001 \leq N \leq 100

翻译由 ChatGPT-4.1 完成。