oh 实在没看懂我这为什么不对/(ㄒoㄒ)/~~ 求大佬帮帮忙
查看原帖
oh 实在没看懂我这为什么不对/(ㄒoㄒ)/~~ 求大佬帮帮忙
905057
zzzzzzq楼主2023/9/20 20:17
#include <string.h>
#define ll long long
using namespace std;

int n; //n up to 500,0000; and n is a 奇数;
int k;
int arr[5000000];

void quicksort
  (int arr[], int l, int r)
{
	if (l >= r) return;
	int i = l, j = r, x = arr[(l + r) >> 1];
	while (i < j) {
		while (arr[i] < x) i++;
		while (arr[j] > x) j--;
		if (i < j)
		{
 			swap(arr[i], arr[j]);
			i++;
			j--;
		}
	}
	if (k <= j)
		quicksort(arr, l, j);
	else if (k > i)
		quicksort(arr, i, r);
	else
	{
		cout << arr[i] << endl;
		return;
	}
}
int main()
{
	cin >> n >> k;
	for (int i = 0; i < n; i++)
		cin >> arr[i];
	quicksort(arr, 0, n - 1);
	return 0;
}
2023/9/20 20:17
加载中...