全RE,求助!!!!!!

P1923 【深基9.例4】求第 k 小的数

justinjia @ 2020-11-29 19:52:44

为各位大佬献上代码:

#include"stdio.h"
int a[5000000];
void quicksort(int start,int end,int k){
    if(start==end){
        a[k]=a[start];
        return;
    }
    int t,i=start,j=end;
    const int pivot=a[(start-end)/2];
    do{
        while(a[i]<pivot)
            i++;
        while(a[j]>pivot)
            j--;
        if(i<=j){
            t=a[i];
            a[i]=a[j];
            a[j]=t;
            i++;
            j--;
        }
    }while(i<=j);
    if(k<=j)
        quicksort(start,j,k);
    else if(i<=k)
        quicksort(i,end,k);
    else
        quicksort(j+1,i-1,k);
}
int main(void){
    int n,k;
    scanf("%d%d",&n,&k);
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    quicksort(0,n-1,k);
    printf("%d",a[k]);
    return 0;
}

by justinjia @ 2020-11-30 18:26:01

@joy2010 你这代码也会TLE啊?


上一页 |