F - Where is the Marble?
lower_bound( )函数查找元素.
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
int btn[100001];
bool cmp(int x, int b)
{
return x < b;
}
int main()
{
int N, M, T = 0;
while (cin >> N >> M && N && M)
{
memset(btn, -1, sizeof(btn));
for (int i = 0; i < N; i++)
{
int k;
cin >> k;
btn[i] = k;
}
sort(btn, btn + N, cmp);
T++;
cout << "CASE# " << T << ":" << endl;
for (int i = 1; i <= M; i++)
{
int k;
cin >> k;
int now = lower_bound(btn, btn + N, k) - btn;
if (btn[now] == k)
{
printf("%d found at %d\n", k, now + 1);
}
else
{
printf("%d not found\n", k);
}
}
}
}