rt,众所周知,partial_sort(first,mid,last)是将first到mid这个区间排序,那么
- 既然只是排
first到mid,那么为什么还要last?
- 感觉
sort(first,mid)也能做到partial_sort(first,mid,last)的事,那么为什么还要这玩意儿呢?
代码:
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll in()
{
ll x=0;char c=getchar();
while(c<'0'||c>'9')c=getchar();
while(c>='0'&&c<='9'){x=x*10+c-48;c=getchar();}
return x;
}
int a[500005],b[500005];
int main()
{
srand(signed(time(NULL)));
int n=in();
for(int i=0;i<n;i++){a[i]=b[i]=rand();printf("%d ",a[i]);}
puts("");
sort(a+n/2,a+n);
partial_sort(b+n/2,b+n,b+n);
for(int i=0;i<n;i++)printf("%d ",a[i]);
puts("");
for(int i=0;i<n;i++)printf("%d ",b[i]);
return 0;
}