【排序】洛谷 P1138 第k小整数

  • Post author:
  • Post category:其他


题目描述

现有n个正整数,n≤10000,要求出这n个正整数中的第k个最小整数(相同大小的整数只计算一次),k≤1000,正整数均小于30000。

输入输出格式

输入格式:

第一行为n和k; 第二行开始为n个正整数的值,整数间用空格隔开。

输出格式:

第k个最小整数的值;若无解,则输出“NO RESULT”。

输入输出样例

输入样例#1:

10 3

1 3 3 7 2 5 1 2 4 6

输出样例#1:

3

说明

n≤10000

代码

#include<iostream>
using namespace std;
int a[30005];
int main()
{
    int n,k;
    cin>>n>>k;
    for(int i=0;i<n;i++)
    {
        int x;
        cin>>x;
        a[x]=1;
    }
    for(int i=1;i<=30000;i++)
    {
        if(a[i]==1)k--;
        if(k==0){cout<<i;return 0;}
    }
    cout<<"NO RESULT";
    return 0;
}



版权声明:本文为hyj542682306原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。