题目:有n个大理石,每一个大理石上写了一个非负整数,首先对其进行排序,而后回答q个问题,每一个问题问是否有一个大理石上写着某个整数x,如是,则回答哪一个大理石上写着x,排序后的大理石从左到右编号为1-n;//能够循环输入spa
#include <cstdio> #include <algorithm> #include <sstream> using namespace std; const int maxn = 10000; int main() { int n, q, x, aa[maxn], k = 0; while (scanf_s("%d %d", &n, &q) == 2) { printf("CASE# %d:\n", ++k); for (int i = 0; i < n; i++) { scanf_s("%d", &aa[i]); } sort(aa, aa + n);//进行排序 while (q--) { scanf_s("%d", &x);//寻找的数字 int p = lower_bound(aa, aa + n, x) - aa; if (aa[p] == x) { printf("%d found at %d\n", x, p + 1); } else { printf("%d not found\n", x); } } } return 0; }