首页 > 代码库 > uva 10474 Where is the Marble?[ vector ]
uva 10474 Where is the Marble?[ vector ]
思路:sort+low_bound()二分
#include<vector> #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<set> using namespace std; int main() { vector<int>v; int n,m; int cas=1; while(scanf("%d%d",&n,&m),n||m) { int t; v.clear(); for(int i=0;i<n;i++) { cin>>t; v.push_back(t); } sort(v.begin(),v.end()); cout<<"CASE# "<<cas++<<":"<<endl; for(int i=0;i<m;i++) { cin>>t; int pos=lower_bound(v.begin(),v.end(),t)-v.begin(); //大于等于t的第一个元素 if(v[pos]==t) cout<<t<<" found at "<<pos+1<<endl; else cout<<t<<" not found\n"; } } return 0; }
uva 10474 Where is the Marble?[ vector ]
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。