2星DFS-锦标赛
锦标赛
https://ac.nowcoder.com/acm/problem/13223
可以不用DFS,只要把积分比小美低的选手和小美比就可以了
每次比赛都会减掉当前对应的那场比赛的一半的选手,直接除2是不对的
#include <iostream>
using namespace std;
int main()
{
int n,cnt=0,ans=0;
scanf("%d",&n);
int a[n];
for(int i=1;i<=n;i++) {
scanf("%d",&a[i]);
if (i>1) if (a[i]<=a[1]) cnt++;
}
while (cnt>1) {
cnt/=2;
ans++;
}
cout << ans << endl;
return 0;
}
//偶数个可与小美比赛的对象时
//9
//4 1 2 1 2 1 2 1 2
//4 2 2 2 2
//4 2 2
//4 2
//4
//奇数个可与小美比赛的对象时
//8
//4 1 2 1 2 1 2 1
//4 2 2 2
//4 2
//4