社区讨论
60求调
P4715【深基16.例1】淘汰赛参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @lo8atze3
- 此快照首次捕获于
- 2023/10/27 15:35 2 年前
- 此快照最后确认于
- 2023/10/27 15:35 2 年前
CPP
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int t[800],n;
inline int read()
{
char c=getchar();
long long x=0,f=1;
while(c<'0'||c>'9'){
if(c=='-')
f=-1;
c=getchar();
}
while(c>='0'&&c<='9'){
x=x*10+c-'0';
c=getchar();
}
return x*f;
}
int main()
{
n=read();
int point=1<<n;
for(int i=point;i<=point*2-1;i++)
t[i]=read();
for(int i=point-1;i>=1;i--)
t[i]=max(t[i*2],t[i*2+1]);
for(int i=point;i<point*2-1;i++)
if(t[i]==t[2])
{
cout<<(i+1)%point;
return 0;
}
cout<<point;
return 0;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...