UVA 10474 【排序与查找】

来源:互联网 发布:淘宝上好看的卫衣店 编辑:程序博客网 时间:2024/06/05 19:14
#include<iostream>#include<string.h>#include<algorithm>using namespace std;const int maxn=10000;int main(){    int n,q,x,a[maxn],kase=0;    while(cin>>n>>q&&n){        cout<<"CASE# "<<++kase<<":"<<endl;        for(int i=0;i<n;i++) cin>>a[i];sort(a,a+n);  //可改为  vector 形式去存        while(q--){  //q此询问            cin>>x; //询问对象            //重点语句            int p=lower_bound(a,a+n,x)-a; //意思为在排序的数组中找到 x的下标(大于等于x的第一个位置的下标)            if(a[p]==x) cout<<x<<" found at "<<a[p]<<endl;            else cout<<x<<" not found "<<endl;        }    }    return 0;}//知识点1:   此出的数组可以用  vector  , 排序改为 sort(v.begin(),v.end())//知识点预知  unique  删除有序数组中的 重复的元素
原创粉丝点击