欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF2057A.MEX Table
MEX Table
题目描述
某天,顽皮的学生马克在课堂上捣乱,于是老师萨沙让他上黑板。萨沙给了马克一个 行 列的表格,要他在表格中填写数字 。每个数字必须使用且仅使用一次,并要求这些数字的排列方式使得每行和每列的 MEX(最小未出现非负整数)之和最大化。具体来说,他需要使 $\sum\limits_{i = 1}^{n} \operatorname{mex}(\{a_{i,1}, a_{i,2}, \ldots, a_{i,m}\}) + \sum\limits_{j = 1}^{m} \operatorname{mex}(\{a_{1,j}, a_{2,j}, \ldots, a_{n,j}\})$ 最大,其中 表示第 行第 列的数字。老师萨沙只关心最终的结果,因此他要求马克只需要告诉他在最佳填法下行和列 MEX 之和的最大值。
注释:MEX(最小未出现非负整数)定义为在给定的整数集合中未出现的最小非负整数。例如:
- 对于集合 ,,因为数字 没有出现在集合中。
- 对于集合 ,,因为数字 和 出现在集合中,而 没有。
- 对于集合 ,,因为数字 都出现在集合中,而 没有。
输入格式
输入包含多个测试用例。第一行输入一个整数 (),表示测试用例的数量。接下来的每个测试用例由两部分组成:
- 一行包含两个整数 和 (),分别表示表格的行数和列数。
输出格式
对于每个测试用例,输出一个整数,表示在所有可能的排列方式中,行和列的 MEX 之和的最大值。
说明/提示
-
在第一个测试用例中,由于表格中唯一的数字是 ,因此第一行和第一列的 MEX 之和为 $\operatorname{mex}(\{0\}) + \operatorname{mex}(\{0\}) = 1 + 1 = 2$。
-
在第二个测试用例中,可以将表格填充为如下:
这样计算可得 $\sum\limits_{i = 1}^{n} \operatorname{mex}(\{a_{i,1}, a_{i,2}, \ldots, a_{i,m}\}) + \sum\limits_{j = 1}^{m} \operatorname{mex}(\{a_{1,j}, a_{2,j}, \ldots, a_{n,j}\}) = \operatorname{mex}(\{3, 0\}) + \operatorname{mex}(\{2, 1\}) + \operatorname{mex}(\{3, 2\}) + \operatorname{mex}(\{0, 1\}) = 1 + 0 + 0 + 2 = 3$。
本翻译由 AI 自动生成
样例
3
1 1
2 2
3 5
2
3
6
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |