用猴子排怎么t了
#include <bits/stdc++.h>
using namespace std;
void shuffle(void *x,int size_elem,int total_elem) {
for(int i=total_elem-1;i>=0;--i) {
int r=rand()%(i+1);
char *a=static_cast<char*>(x)+r*size_elem;
char *b=static_cast<char*>(x)+i*size_elem;
for(int j=0;j<size_elem;++j) {
swap(a[j],b[j]);
}
}
}
int main(){
srand(static_cast<unsigned>(time(nullptr)));
int n1;cin>>n1;
int l[n1];
for(int i=0;i<n1;i++) {
cin>>l[i];
}
int isSort=0;
while(!isSort) {
shuffle(l,sizeof(l[0]),n1);
isSort=1;
for(int i=0;i<n1-1;i++) {
if(l[i]>l[i+1]) {
isSort=0;break;
}
}
}
for(int i=0;i<n1;i++) {
cout<<l[i]<<" ";
}
cout<<endl;
return 0;
}