这题意真的没有问题吗?不需要考虑重复的数字?

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

bu_chi_suan @ 2024-03-26 18:44:55

这是全AC的代码:

#include<stdio.h>
#include<algorithm>
using namespace std;
int a[5000001];
int main()
{
    int n,k;
    scanf("%d%d",&n,&k);
    for(int i=0;i<n;i++)
        scanf("%d",&a[i]);
    sort(a,a+n);
    printf("%d",a[k]);
    return 0;
}

这是全WA的代码:

include<stdio.h>

include<algorithm>

using namespace std; int a[5000001]; int main() { int n,k; scanf("%d%d",&n,&k); for(int i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); for(int i=0;i<n;i++) { if(a[i+1]!=a[i]) k--; if(k==0) printf("%d",a[i+1]); } return 0; }


by HeYilin @ 2024-03-26 18:59:29

你MD炸了


|