求助,最后两个点re
查看原帖
求助,最后两个点re
690969
123456xh楼主2022/5/26 18:34
#include<bits/stdc++.h>
using namespace std;
const int N=5000000;
int a[N];
void q_sort(int l,int m)
{
	int mid = a[(l+m)/2];
	int i=l,j=m;
	do{
		while(a[i]<mid)i++;
		while(a[j]>mid)j--;
		if(i<=j)
		{
			swap(a[i],a[j]);
			i++;
			j--;
		} 
	}while(i<=j);
	if (l<j) q_sort(l,j);
	if (i<m) q_sort(i,m);
}
int main()
{
	int k,n;
	scanf("%d %d",&n,&k);
	for(int i=1;i<=n;i++) scanf("%d",&a[i]);
	q_sort(1,n);
	for(int i=1;i<=n;i++)
	{
		if (i==k+1) printf("%d",a[i]);
	}
}
2022/5/26 18:34
加载中...