之前过了,复习发现只能过最后两个样例
查看原帖
之前过了,复习发现只能过最后两个样例
534532
AnthonyEric楼主2021/10/5 22:57
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a[111451];
void qs(ll a[], ll  l, ll r){
	ll i = l, j = r, temp = a[(l + r) / 2];
	do{
		while(a[i] < temp) i++;
		while(a[j] > temp) j--;
		if(i <= j){
			swap(a[i],a[j]);
			i++;
			j--;
		}
	}
	while(i <= j);
	if(l < j) return qs(a, l, j);
	if(i < r) return qs(a, i, r);
}
int main(){
	int r;
	cin >> r;
	for(int i = 1; i <= r; i++) cin >> a[i];
	qs(a, 1, r);
	for(int i = 1; i <= r; i++) cout << a[i] << " ";
	return 0;
}
2021/10/5 22:57
加载中...