asatmda

unique 去重函数 C++|STL标准模板库
uniqueunique函数属于STL中比较常用函数,它的功能是元素去重。即”删除”序列中所有相邻的重复元素(只保...
扫描右侧二维码阅读全文
07
2019/10

unique 去重函数 C++|STL标准模板库

unique

unique函数属于STL中比较常用函数,它的功能是元素去重。即”删除”序列中所有相邻的重复元素(只保留一个)。此处的删除,并不是真的删除,而是指重复元素的位置被不重复的元素给占领了(放到末尾)。由于它”删除”的是相邻的重复元素,所以在使用unique函数之前,一般都会将目标序列进行排序。

题目描述

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

输入格式

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

输出格式

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

输入输出样例

输入 #1
10 3
1 3 3 7 2 5 1 2 4 6
输出 #2
3

说明/提示

n≤10000

代码如下:

#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=1e4+10;
int a[maxn],b[maxn];
int main(){
    int n,k;
    cin>>n>>k;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    sort(a+1,a+n+1);
    int ans=unique(a+1,a+n+1)-a;
    //for(int i=1;i<=ans;i++){
      //  cout<<a[i]<<" ";
  //  }
    if(k<ans)
        cout<<a[k];
    else
        cout<<"NO RESULT"<<endl;
    return 0;
}

题目练习

第K小整数

明明的随机数

Last modification:October 13th, 2019 at 07:02 pm
如果觉得我的文章对你有用,请随意赞赏

Leave a Comment