记录编号 530219 评测结果 WWWWWWWTWW
题目名称 爱摔跤的比利海灵顿 最终得分 0
用户昵称 Gravatar瑆の時間~無盡輪迴·林蔭 是否通过 未通过
代码语言 C++ 运行时间 2.959 s
提交时间 2019-04-18 20:47:30 内存使用 79.45 MiB
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;
#define int long long int
int dui[10000001];
int n,k;
void up(int x)
{
	while(x>1)
	{
		if(dui[x/2]<dui[x])
		{
			swap(dui[x/2],dui[x]);
			x=x/2;
		}
		else
		{
			break;
		}
	}
}
void kill(int r)
{
	int x=r*2;
	while(x<=n)
	{
		if(x<n&&dui[x]<dui[x+1])
		{
			x++;
		}
		if(dui[x]>dui[r])
		{
			swap(dui[x],dui[r]);
			r=x;
			x=r*2;
		}
		else
		{
			break;
		}
	}
}
signed main()
{
	freopen("find_k.in", "r", stdin);
	freopen("find_k.out", "w", stdout);
	scanf("%lld%lld",&n,&k);
	for(int i=1;i<=n;i++)
	{
		scanf("%lld",&dui[i]);
		up(i); 
	}
	for(int i=1;i<k;i++)
	{
		dui[1]=dui[n--];
		kill(1);
	}
	printf("%lld",dui[1]);
	return 0;
}