为啥桶排序还RE?

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

tlzhy @ 2021-01-02 23:19:24

#include<bits/stdc++.h>
using namespace std;
int a[10000],t,n,cnt=0,k;
int main(){
    cin>>n>>k;
    k+=1;
    for(int i=0;i<n;i++)
    {
        cin>>t;
        a[t]++;
    }
    for(int i=0;i<n;i++)
    {
        if(a[i]!=0)
            cnt++;
        if(cnt==k)
        {
            cout<<i;
            break;
        }
    }
}

by syksykCCC @ 2021-01-02 23:30:28

为啥桶排序不能 RE?


by 云浅知处 @ 2021-01-02 23:41:59

注意值域


by Rayon @ 2021-01-02 23:44:57

0 < a_i < 10^9

你这桶开太小了,而且正常数组是开不到这么大的……


by EuphoricStar @ 2021-01-03 07:17:36

@tlzhy 这题不适合用桶排做。。

0 < a_i < 10^9

by Almond7216 @ 2021-02-05 15:35:19

这个数据大,用桶装不下


|