ny 找球号(一)
来源:互联网 发布:物联网农业数据平台 编辑:程序博客网 时间:2024/06/03 16:00
找球号(一)
时间限制:3000 ms | 内存限制:65535 KB
难度:3
- 描述
- 在某一国度里流行着一种游戏。游戏规则为:在一堆球中,每个球上都有一个整数编号i(0<=i<=100000000),编号可重复,现在说一个随机整数k(0<=k<=100000100),判断编号为k的球是否在这堆球中(存在为"YES",否则为"NO"),先答出者为胜。现在有一个人想玩玩这个游戏,但他又很懒。他希望你能帮助他取得胜利。
- 输入
- 第一行有两个整数m,n(0<=n<=100000,0<=m<=1000000);m表示这堆球里有m个球,n表示这个游戏进行n次。
接下来输入m+n个整数,前m个分别表示这m个球的编号i,后n个分别表示每次游戏中的随机整数k - 输出
- 输出"YES"或"NO"
- 样例输入
6 423 34 46 768 343 3432 4 23 343
- 样例输出
NONOYES
YES
//利用二分查找
ac代码:
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int a[1000010];int main(){ int n,m,t; scanf("%d%d",&n,&m); for(int i=0;i<n;i++) scanf("%d",&a[i]); sort(a,a+n); for(int i=0;i<m;i++) { int first=0,last=n,mid,falg=0; scanf("%d",&t); while(first<=last) { mid=first+(last-first)/2; if(a[mid]==t) { falg=1; break;}else if(a[mid]<t)first=mid+1;else last=mid-1;} if(falg) printf("YES\n"); else printf("NO\n");}return 0;}
0 0
- ny 找球号(一)
- ny-86-找球号(一)
- NY--86 -- 找球号(一) [STL] [set容器]
- NY--108 -- 士兵杀敌(一)
- ny喷水装置(一)Java
- [置顶]ny-47-喷水装置(一)
- 1408101010-ny-喷水装置(一)
- 1411020830-ny-取石子(一)
- NY-06喷水装置(一)
- NY oj 107 士兵杀敌(一)
- NY 题目6 喷水装置(一)(贪心问题)
- NY
- 【ny-oj】-108-士兵杀敌(一)(树状数组,线段树,基础)
- ny 108 士兵杀敌(一)-- 水(大家都是这么说的)利用线段树果断超时。。。
- ny 844 A+B Problem(V)
- ny 37 回文字符串(LCS)
- 1411211909-ny-寻找最大数(三)
- ny 8 一种排序(sort)
- C#线程(一)
- Bzoj 3209 花神的数论题
- Java四种引用类型
- PyCharm显示行号(四)
- iOS开发中矩阵的操作(乘积、求逆和转置)
- ny 找球号(一)
- EventEmitter 使用
- Android studio下NDK开发环境配置及开发流程
- 计算机语言发展史
- 链表分割问题
- 背景颜色转为UIImage
- performSelector系列方法编译器警告-Warc-performSelector-leaks
- AFNetworking解析(三)
- BestCoder 2nd Anniversary A,B,C解题报告