全RE!!!!!!!!!!!!

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

SaberMJ @ 2022-06-17 08:38:44

#include<bits/stdc++.h>
using namespace std;

bool gp(int a, int b){
    return a < b;
}

int main(){
    int n, a[100000], k;
    cin >> n >> k;
    for(int i=0 ;i<n ;i++){
        scanf("%d", a[i]);
    }
    sort(a + 0, a + n, gp);
    cout << a[k];
}

by CharlesZiy @ 2022-06-17 08:48:50

@cbh1008 对于您的情况,我想说请您查看一下本题题解。您的做法不是正解,即使搞定了RE也无法AC。


by CharlesZiy @ 2022-06-17 08:49:12

@ningago 我谢罪


by Dream_weavers @ 2022-06-17 09:08:02

乐。

lz不会自己先调一下题吗,看题解也行,别错了就问好吗(也不要骂人)


by 离散小波变换° @ 2022-06-17 09:26:41

@cbh1008 首先,数据范围 5\times 10^6,你数组开小了。

然后这个做法应该是过不去的(复杂度 \mathcal O(n\log n),会超时),建议先学习快速排序求 k 大。


by SaberMJ @ 2022-06-17 09:41:34

代码:

#include<bits/stdc++.h>
using namespace std;

int main(){
    int n, k, a[100000];
    cin >> n >> k;
    for(int i=0 ;i<n ;i++){
        scanf("%d", &a[i]);
    }
    nth_element(a + 0, a + n, a + k);
    cout << a[k];
}

情况


by SaberMJ @ 2022-06-17 09:44:59

代码:

#include<bits/stdc++.h>
using namespace std;

bool ch(int a, int b){
    return a < b;
}

int main(){
    int n, k, a[100000];
    cin >> n >> k;
    for(int i=0 ;i<n ;i++){
        scanf("%d", &a[i]);
    }
    quicksort(a + 0, a + n);
    cout << a[k];
}

/tmp/compiler_qy9k7_x8/src: 在函数‘int main()’中: /tmp/compiler_qy9k7_x8/src:14:2: 错误:‘quicksort’在此作用域中尚未声明 14 | quicksort(a + 0, a + n); | ^~~~~


by Iwara_qwq @ 2022-06-17 09:48:21

无语


by Iwara_qwq @ 2022-06-17 09:48:35

quicksort啥玩意


by jacklee10086 @ 2022-06-17 09:59:02

emmm真的建议先学好语法,可以读读深进或者c++语法书,这个quicksort我真的蚌埠住。。。


by irris @ 2022-06-17 16:53:59

我要和时间赛跑!!!!!111


上一页 |