A16649 | El fucho
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
胡安和他的朋友们打算将自己分成 $n$ 支队伍,进行一场经过修改的双败淘汰制足球锦标赛。比赛分为胜者组和败者组。一开始,所有队伍都属于胜者组。
在锦标赛的每一轮中,只要任意一组中至少有两支队伍,就会发生以下过程:
- 所有胜者组的队伍进行配对。
- 如果胜者组有奇数支队伍,将会有一支队伍没有被配对(不会参加本轮比赛)。这支队伍会留在胜者组。
- 对于被配对的胜者组队伍,每对进行一场没有平局的足球赛。
- 获胜的队伍留在胜者组。
- 失败的队伍在下一轮进入败者组。
- 所有败者组的队伍进行配对。
- 如果败者组有奇数支队伍,将会有一支队伍没有被配对(不会参加本轮比赛)。这支队伍会留在败者组。
- 对于被配对的败者组队伍,每对进行一场没有平局的足球赛。
- 获胜的队伍留在败者组。
- 失败的队伍会被淘汰出锦标赛。
注意,在上述过程中,胜者组输掉比赛进入败者组的队伍,将在下一轮才参与败者组的配对。也就是说,这些队伍不会被纳入本轮败者组的配对过程。
经过多轮上述过程后,胜者组和败者组都将只剩下一支队伍。当出现这种情况时,两组的最后一支队伍将进行一场比赛,决出最终的胜者。
请计算总共进行了多少场比赛。可以证明,无论队伍如何配对及胜负如何,答案都是唯一的。
在锦标赛的每一轮中,只要任意一组中至少有两支队伍,就会发生以下过程:
- 所有胜者组的队伍进行配对。
- 如果胜者组有奇数支队伍,将会有一支队伍没有被配对(不会参加本轮比赛)。这支队伍会留在胜者组。
- 对于被配对的胜者组队伍,每对进行一场没有平局的足球赛。
- 获胜的队伍留在胜者组。
- 失败的队伍在下一轮进入败者组。
- 所有败者组的队伍进行配对。
- 如果败者组有奇数支队伍,将会有一支队伍没有被配对(不会参加本轮比赛)。这支队伍会留在败者组。
- 对于被配对的败者组队伍,每对进行一场没有平局的足球赛。
- 获胜的队伍留在败者组。
- 失败的队伍会被淘汰出锦标赛。
注意,在上述过程中,胜者组输掉比赛进入败者组的队伍,将在下一轮才参与败者组的配对。也就是说,这些队伍不会被纳入本轮败者组的配对过程。
经过多轮上述过程后,胜者组和败者组都将只剩下一支队伍。当出现这种情况时,两组的最后一支队伍将进行一场比赛,决出最终的胜者。
请计算总共进行了多少场比赛。可以证明,无论队伍如何配对及胜负如何,答案都是唯一的。
输入格式
每个测试点包含多个测试用例。第一行包含测试用例的数量 $t$($1 \le t \le 100$)。每个测试用例包含一行一个正整数 $n$($2 \le n \le 500$),表示队伍的数量。
输出格式
对于每个测试用例,输出本次锦标赛中总共进行的比赛场数。
输入输出样例
输入 #1
2 2 3
输出 #1
2 4
在第一个测试用例中,可以证明总共进行了 $2$ 场比赛后决出了胜者。
在第二个测试用例中,下图展示了一种可能的锦标赛流程。可以看到,总共进行了 $4$ 场比赛。

在第二个测试用例中,下图展示了一种可能的锦标赛流程。可以看到,总共进行了 $4$ 场比赛。

C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?