#P10228. [COCI 2023/2024 #4] Bingo
[COCI 2023/2024 #4] Bingo
题目背景
译自 COCI 2023/2024 Contest #4 T1「Bingo」
题目描述
现在是游玩 Bingo 的时间!
想要玩 Bingo 游戏,你需要一名游戏主持人和一个装有 90 个球的滚轮。滚轮中的球被编号为 ,每个数字编号写在恰好一个球上。
在游戏开始前,主持人向 名玩家每人发放一块 的格板,每格包含一个 到 范围内的整数。一块格板上的数字互不相同,每名玩家的格板互不相同。
所有的玩家都拿到格板后,游戏开始。
主持人开始从滚轮中取出球。取出编号为 的球后,主持人向所有玩家宣布编号,并将球放到一边。所有玩家会检查自己的格板,如果格板上有取出的球的编号,他们会将这个数从格板上划去。
当一名玩家划去了行、列、主对角线或从对角线上全部的 5 个数字,这名玩家将喊出 Bingo!
。此时,游戏结束,这名玩家赢得游戏。
为了让游戏更加有趣,主持人决定引入一条额外规则。在任何人被允许喊出 Bingo!
前,主持人将先取出 个球。(即使玩家已经划去了连续的 5 个数,也必须等到 个球取出后才能喊出 Bingo!
)
但是,当主持人取出第 个球的瞬间,场上发生了一阵骚动!所有的玩家都喊出了 Bingo!
。
主持人不知道该相信谁。为了解决这个状况,他向你寻求帮助。请计算出 个球被取出后,有多少玩家可以喊出 Bingo!
。
输入格式
输入的第一行为一个整数 (),表示玩家的数目。
接下来 行:
- 第一行包含一个长度不超过 的字符串,仅由英文小写字母组成,表示玩家的姓名。没有两个玩家姓名相同。
- 接下来 行,每行包含 个 的整数,描述了这名玩家的格板。每块格板上数字不同。
接下来一行包含一个整数 (),表示主持人将取出的球的数目。
接下来一行包含 个 范围内的整数,表示主持人从滚轮中取出的球的编号。每个数字最多出现一次。
输出格式
第一行输出一个整数 ,表示可以喊出 Bingo!
的玩家数目。
接下来 行,输出他们的名字。按照输入的顺序输出。
提示
样例解释 1
babylasagna
在第一行实现了 Bingo!
。
nataliebalmix
在第一列实现了 Bingo!
。
lettri
在左下角到右上角的从对角线实现了 Bingo!
。
样例解释 2
只取出了 4 个球,没有人能划去 5 个数。
子任务
Subtask | Points | Constraints |
---|---|---|
1 | 12 | 只有一个玩家,也就是说, |
2 | 22 | 最多只有一个玩家喊出 Bingo! |
3 | 16 | 无额外限制 |