CF2155A题解
2025-10-09 13:50:33
发布于:广东
题目:CF2155A
难度:1700
题目标签:数学,(翻译了个实施?模拟吧)
题目中译:
A. 淘汰制赛事(El fucho)
时间限制:每个测试用例 1 秒
内存限制:每个测试用例 256 兆字节
胡安和他的朋友们要分成 支队伍,进行一场改良版双败淘汰制足球赛,赛事包含胜者组和败者组。初始时,所有队伍都属于胜者组。
在赛事的每一轮中,只要其中一个组别仍有至少两支队伍,就会按以下流程进行:
胜者组的所有队伍两两配对。
若胜者组队伍数量为奇数,则会有一支队伍无法配对(不参与本轮比赛),该队伍留在胜者组。
胜者组中成功配对的队伍,每对进行一场足球赛,比赛无平局。
获胜的队伍留在胜者组。
失利的队伍将在下一轮降至败者组(本轮败者组配对流程中不考虑该队伍)。
败者组的所有队伍两两配对。
若败者组队伍数量为奇数,则会有一支队伍无法配对(不参与本轮比赛),该队伍留在败者组。
败者组中成功配对的队伍,每对进行一场足球赛,比赛无平局。
获胜的队伍留在败者组。
失利的队伍被淘汰出赛事。
经过多轮上述流程后,最终胜者组和败者组将各剩下一支队伍。此时,这两支队伍会进行一场对决,决出最终冠军。
请计算赛事总共进行了多少场比赛。可以证明,无论队伍如何配对、比赛胜负结果如何,最终总比赛数都是固定的。
输入
每个测试包含多个测试用例。第一行输入测试用例数量 ()。接下来是各测试用例的描述。
每个测试用例仅包含一行,输入一个正整数 ()—— 代表队伍的数量。
输出
对于每个测试用例,输出赛事总共进行的比赛场数。
样例组#1:
Input:
2
2
3
Output:
4
6
题解:
显然,每场比赛都会产生一个 ,每个被淘汰的人都失败过两次,最后的冠军可能失败 次,手推小数据发现答案等于 。
先交一发,?直接过了 压力
#include<bits/stdc++.h>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
int n;
cin>>n;
cout<<2*n-2<<endl;
}
}
这里空空如也
有帮助,赞一个