记录编号 |
217235 |
评测结果 |
AAAAAAAAAA |
题目名称 |
排序测试 |
最终得分 |
100 |
用户昵称 |
GaoErFu |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
4.543 s |
提交时间 |
2016-01-03 09:27:20 |
内存使用 |
11.35 MiB |
显示代码纯文本
#include<stdio.h>
int a[3000000]={0};
void qsort(int l,int r)
{
if(l>=r)return ;
int x,i,j,m,mid;
m=(l+r)/2;
mid=(m+r)/2;
x=a[mid];
a[mid]=a[l];
i=l;
j=r;
while(i!=j)
{
while(a[j]>=x&&i!=j)j--;
a[i]=a[j];
while(a[i]<=x&&i!=j)i++;
a[j]=a[i];
}
a[i]=x;
qsort(l,i-1);
qsort(i+1,r);
}
int main()
{
freopen("sorttest.in","r",stdin);
freopen("sorttest.out","w",stdout);
int i,n,f=1;
scanf("%d",&n);
for(i=0;i<n;i++)
{scanf("%d",&a[i]);if(a[i]<a[i-1])f=0;}
if(f==0)qsort(0,n-1);
for(i=0;i<n;i++)
printf("%d ",a[i]);
return 0;
}