TLE怎么办呀,求大家帮忙

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

AlenLuo @ 2023-07-25 10:40:47

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int num[6000000],n,m;
int main(){
    scanf("%d%d",&m,&n);
    for(int i=0;i<m;i++)cin>>num[i];
    sort(num,num+m);
    printf("%d",num[n]);
    return 0;
} 

by 0oOo0 @ 2023-07-25 10:43:32

@Mrli1053 用二分试试看。(要诚实,我不给代码)


by 0oOo0 @ 2023-07-25 10:44:20

@Mrli1053 或者是直接用nth_element(呵呵呵呵哈哈哈哈)


by zhangyuanxiao @ 2023-07-25 10:47:53

@Mrli1053 改用 cin/cout 然后加个

std::ios::sync_with_stdio(false);
cin.tie(0);

by yinbe @ 2023-07-26 23:09:43

@zhangyuanxiao 取消流同步之

cin/cout

速度和

scanf/printf

的速度差不多,提不了多少速。


by zhangyuanxiao @ 2023-07-27 07:52:59

@LuYe0219 去同步后 cin/coutscanf/printf 快很多


by zhangyuanxiao @ 2023-07-27 08:31:24

@LuYe0219 for 循环里的输入不是输入?


by yinbe @ 2023-07-27 08:40:55

@zhangyuanxiao 请不要在意我这个瞎子


|