2494. 找苹果

1000ms 256MB 简单 二分算法
题目描述
小鹿非常喜欢吃苹果。大熊送给小鹿 $n$ 个苹果,小鹿将这些苹果按照重量**从小到大**依次排列好。 现在小鹿想从这堆苹果中找出一个重量恰好为 $m$ 克的苹果来吃。由于苹果数量非常多,请你编写一个程序,使用**二分查找算法**快速帮小鹿判断这堆苹果中是否存在重量为 $m$ 的苹果。
输入格式
- 第一行包含一个正整数 $n$,表示苹果的总数量 ($1 < n \le 10,000,000$)。 - 第二行包含 $n$ 个正整数,表示每个苹果的重量(已按升序排列)。 - 第三行包含一个正整数 $m$,表示小鹿想要寻找的苹果重量。
输出格式
- 如果存在重量为 $m$ 的苹果,输出 `YES`;否则输出 `NO`。
样例 1
输入 (Input)

                    
输出 (Output)

                    
- $n$ 最大可达一千万,普通的顺序查找可能会导致超时。 - 必须使用二分查找算法,并注意输入输出效率优化。 - 建议在 C++ 中使用 `ios::sync_with_stdio(false); cin.tie(0);` 来加速 `cin` 的读取速度。
自测终端 stdin → stdout
› 输入 stdin
CtrlShiftEnter
‹ 输出 stdout

                
错误 stderr

                
CtrlEnter提交
自动保存已开启
操作成功
wzs_oj@kernel:~ — wzs-sh
guest@wzsoj:~$
刷新页面 F5
复制 Ctrl+C
粘贴 Ctrl+V
搜索题目
训练中心
站点公告
今日神谕
CSP 倒计时
排行榜
我的提交
Esc 关闭 Enter 跳转 支持模糊匹配数字