我在其他地方测试就对了,在洛谷就超时了

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

imbecile @ 2020-05-12 20:40:01

#include<bits/stdc++.h>
using namespace std;
int a[5000000],n,k;
int main()
{
    cin>>n>>k;
    for(int j=0;j<n;j++)
    {
        cin>>a[j];
        for(int z=0;z<j;z++)
        {
            if(a[z]==a[j])
            {
                j-=1;
                n-=1;
            }
         } 
    }
    k--;
    sort(a,a+n);
    if(k<n) cout<<a[k];
    else cout<<"NO RESULT";
 }

帮忙看看!


by SIXIANG32 @ 2020-05-12 20:41:44

@zengxiangtuo
sort(a,a+n); 就算堆排也会被这题的毒瘤数据卡死OK?


by _tommysun_ @ 2020-05-12 20:41:44

@zengxiangtuo 麻烦您仔细看看“其它地方”的时间限制和数据范围......


by bovine__kebi @ 2020-05-12 20:41:57

那是其他地方数据太水了。。


by yummy @ 2020-05-12 20:42:04

@zengxiangtuo 建议学习时间复杂度的概念


by 囧仙 @ 2020-05-12 20:42:16

@zengxiangtuo 复杂度太高了。要\mathcal O(N)才能过。


by bovine__kebi @ 2020-05-12 20:42:18

你也不想想,你这个复杂度是多少


by metaphysis @ 2020-05-12 20:42:50

@zengxiangtuo

您需要考虑您的算法可能不够高效,因为测试数据是针对性加强过的。


by 迷残云 @ 2020-05-12 20:42:51

@SIXIANG

没被卡啊,可能改数据了吧……


by 迷残云 @ 2020-05-12 20:43:14

record


by SIXIANG32 @ 2020-05-12 20:43:23

@迷残云 应该是(我以前吸氧过了……)


| 下一页