大佬帮忙

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

FTYCYC @ 2023-07-26 16:05:53

自己想的一个思路,没有用到快排,两个WA,3个RE,想不出来哪里有问题

#include<iostream>
using namespace std;
int main(){
    int n,a[1000]={0},k,x;
    cin>>n>>k;
    for(int i=0;i<n;i++){
        cin>>x;
        a[x]++;
    }
    for(int i=0;i<1000;i++){
        if(a[i]!=0){
            k-=a[i];
            if(k<=0){
                cout<<i+1;
                break;
            }
        }
    }
    return 0;
}

by Terrible @ 2023-07-26 16:28:10

@FTYCYC 离谱,请打开题解看看。


by chen_z @ 2023-07-26 16:44:49

但是我现在题目炸了,看不了,等会啊


by chen_z @ 2023-07-26 16:44:56

@FTYCYC


by chen_z @ 2023-07-26 16:54:30

哦去同学那看了眼,桶应该是过不了的,但是可以直接sort+scanf+O2,要不就要分治


by xiaoyang111 @ 2023-07-26 20:48:28

@FTYCYC 桶是过不了的,开大了超时,开小了RE。


by xiaoyang111 @ 2023-07-26 20:50:23

注意:


by xiaoyang111 @ 2023-07-26 20:52:17

不对开大了是先爆内存

爆内存记录


|