5593: P10228 [COCI 2023/2024 #4] Bingo
Memory Limit:512 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
现在是游玩 Bingo 的时间!
想要玩 Bingo 游戏,你需要一名游戏主持人和一个装有 90 个球的滚轮。滚轮中的球被编号为 $1\sim 90$,每个数字编号写在恰好一个球上。
在游戏开始前,主持人向 $n$ 名玩家每人发放一块 $5\times 5$ 的格板,每格包含一个 $1$ 到 $90$ 范围内的整数。一块格板上的数字互不相同,每名玩家的格板互不相同。
所有的玩家都拿到格板后,游戏开始。
主持人开始从滚轮中取出球。取出编号为 $x_i$ 的球后,主持人向所有玩家宣布编号,并将球放到一边。所有玩家会检查自己的格板,如果格板上有取出的球的编号,他们会将这个数从格板上划去。
当一名玩家划去了行、列、主对角线或从对角线上全部的 5 个数字,这名玩家将喊出 `Bingo!`。此时,游戏结束,这名玩家赢得游戏。
为了让游戏更加有趣,主持人决定引入一条额外规则。在任何人被允许喊出 `Bingo!` 前,主持人将先取出 $m$ 个球。(即使玩家已经划去了连续的 5 个数,也必须等到 $m$ 个球取出后才能喊出 `Bingo!`)
但是,当主持人取出第 $m$ 个球的瞬间,场上发生了一阵骚动!所有的玩家都喊出了 `Bingo!`。
主持人不知道该相信谁。为了解决这个状况,他向你寻求帮助。请计算出 $m$ 个球被取出后,有多少玩家可以喊出 `Bingo!`。
想要玩 Bingo 游戏,你需要一名游戏主持人和一个装有 90 个球的滚轮。滚轮中的球被编号为 $1\sim 90$,每个数字编号写在恰好一个球上。
在游戏开始前,主持人向 $n$ 名玩家每人发放一块 $5\times 5$ 的格板,每格包含一个 $1$ 到 $90$ 范围内的整数。一块格板上的数字互不相同,每名玩家的格板互不相同。
所有的玩家都拿到格板后,游戏开始。
主持人开始从滚轮中取出球。取出编号为 $x_i$ 的球后,主持人向所有玩家宣布编号,并将球放到一边。所有玩家会检查自己的格板,如果格板上有取出的球的编号,他们会将这个数从格板上划去。
当一名玩家划去了行、列、主对角线或从对角线上全部的 5 个数字,这名玩家将喊出 `Bingo!`。此时,游戏结束,这名玩家赢得游戏。
为了让游戏更加有趣,主持人决定引入一条额外规则。在任何人被允许喊出 `Bingo!` 前,主持人将先取出 $m$ 个球。(即使玩家已经划去了连续的 5 个数,也必须等到 $m$ 个球取出后才能喊出 `Bingo!`)
但是,当主持人取出第 $m$ 个球的瞬间,场上发生了一阵骚动!所有的玩家都喊出了 `Bingo!`。
主持人不知道该相信谁。为了解决这个状况,他向你寻求帮助。请计算出 $m$ 个球被取出后,有多少玩家可以喊出 `Bingo!`。
Input
输入的第一行为一个整数 $n$($1 \le n \le 50$),表示玩家的数目。
接下来 $n\times 6$ 行:
- 第一行包含一个长度不超过 $20$ 的字符串,仅由英文小写字母组成,表示玩家的姓名。没有两个玩家姓名相同。
- 接下来 $5$ 行,每行包含 $5$ 个 $1\sim90$ 的整数,描述了这名玩家的格板。每块格板上数字不同。
接下来一行包含一个整数 $m$($1 \le m \le 90$),表示主持人将取出的球的数目。
接下来一行包含 $m$ 个 $1\sim 90$ 范围内的整数,表示主持人从滚轮中取出的球的编号。每个数字最多出现一次。
接下来 $n\times 6$ 行:
- 第一行包含一个长度不超过 $20$ 的字符串,仅由英文小写字母组成,表示玩家的姓名。没有两个玩家姓名相同。
- 接下来 $5$ 行,每行包含 $5$ 个 $1\sim90$ 的整数,描述了这名玩家的格板。每块格板上数字不同。
接下来一行包含一个整数 $m$($1 \le m \le 90$),表示主持人将取出的球的数目。
接下来一行包含 $m$ 个 $1\sim 90$ 范围内的整数,表示主持人从滚轮中取出的球的编号。每个数字最多出现一次。
Output
第一行输出一个整数 $k$,表示可以喊出 `Bingo!` 的玩家数目。
接下来 $k$ 行,输出他们的名字。按照输入的顺序输出。
接下来 $k$ 行,输出他们的名字。按照输入的顺序输出。
Sample Input Copy
3
babylasagna
10 11 12 13 14
15 16 17 18 19
20 21 22 23 24
25 26 27 28 29
30 31 32 33 34
nataliebalmix
10 20 30 40 50
11 21 31 41 51
12 22 32 42 52
13 23 33 43 53
14 24 34 44 54
lettri
89 88 87 86 10
85 84 83 11 82
81 80 12 79 78
77 13 76 75 74
14 73 72 71 70
6
10 11 12 13 14 15
Sample Output Copy
3
babylasagna
nataliebalmix
lettri
HINT
样例解释 1
`babylasagna` 在第一行实现了 `Bingo!`。
`nataliebalmix` 在第一列实现了 `Bingo!`。
`lettri` 在左下角到右上角的从对角线实现了 `Bingo!`。
样例解释 2
只取出了 4 个球,没有人能划去 5 个数。
子任务

`babylasagna` 在第一行实现了 `Bingo!`。
`nataliebalmix` 在第一列实现了 `Bingo!`。
`lettri` 在左下角到右上角的从对角线实现了 `Bingo!`。
样例解释 2
只取出了 4 个球,没有人能划去 5 个数。
子任务
