2496. 在数组中找数
1000ms
256MB
简单
二分算法
题目描述
给定 $N$ 个整数构成的集合,随后进行 $M$ 次查询。每次查询给出一个整数 $d$,请判断 $d$ 是否在这个 $N$ 个整数中出现过。
输入格式
- 第一行包含两个正整数 $N$ 和 $M$ ($0 < N \le 1,000,000, 0 < M \le 10,000$)。
- 第二行包含 $N$ 个整数 $x$,表示集合中的元素,整数之间用空格隔开。
- 接下来 $M$ 行,每行包含一个整数 $d$,表示要查询的数字。
输出格式
- 对于每次查询,如果 $d$ 在集合中出现过,输出 `Yes`;否则输出 `No`。每个输出占一行。
样例 1
输入 (Input)
输出 (Output)
- $0 < N \le 1,000,000$
- $0 < M \le 10,000$
- $0 \le d, x \le 500,000,000$
- **提示**:必须先排序再二分查找,否则会超时。
› 输入 stdin
CtrlShiftEnter
‹ 输出 stdout
错误 stderr
操作成功