找球号(一)

时间限制: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 4
23 34 46 768 343 343
2 4 23 343
例子输出
NO
NO
YES
YES
思路:首先用一个一位数组存入元素,然后运用高速排序进行排序,最后二分法查找

#include<stdio.h>
#include<stdlib.h>
int s[1000005];
int low,high;
int cmp(const void *a,const void *b)//高速排序
{return (*(int *)a-*(int *)b);
}
int jisuan(int x)//二分法查找
{int mid;while(low<=high){mid=(low+high)/2;if(s[mid]==x)return 1;else if(s[mid]<x)low=mid+1;elsehigh=mid-1;}if(low>high)return 0;
}
int main()
{int i,m,n,a;scanf("%d%d",&m,&n);for(i=0;i<m;i++)scanf("%d",&s[i]);qsort(s,m,sizeof(int),cmp);//高速排序while(n--){low=0;high=m-1;scanf("%d",&a);if(jisuan(a)==1)//二分法printf("YES\n");elseprintf("NO\n");}return 0;
}        

nyoj 86 找球号(一)相关推荐

  1. NYOJ 138 找球号(二)哈希表

    找球号(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:5 描述 在某一国度里流行着一种游戏.游戏规则为:现有一堆球中,每个球上都有一个整数编号i(0<=i<=1 ...

  2. NYOJ 138 找球号(二) (哈希)

    题目链接 描述 在某一国度里流行着一种游戏.游戏规则为:现有一堆球中,每个球上都有一个整数编号i(0<=i<=100000000),编号可重复,还有一个空箱子,现在有两种动作:一种是&qu ...

  3. NYOJ 题目528 找球号(三)

    找球号(三) 时间限制:2000 ms  |  内存限制:3000 KB 难度:2 描述 xiaod现在正在某个球场负责网球的管理工作.为了方便管理,他把每个球都编了号,且每个编号的球的总个数都是偶数 ...

  4. NYOJ-86 找球号(一)

    找球号(一) 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 在某一国度里流行着一种游戏.游戏规则为:在一堆球中,每个球上都有一个整数编号i(0<=i<=10 ...

  5. NOJ --138 找球号(二)

    最基础的哈希表用法,先看所要存的个数,一般都是10N+10的内存,这样相当于十个位置里面有一个,空间是足够的.之前一直一直都是超时,就是因为内存开小的话就会出现死循环,因为存不了那么多个数 #incl ...

  6. 1299: 【二分查找】找球号

    题目描述 在某一国度里流行着一种游戏.游戏规则为:在一堆球中,每个球上都有一个整数编号i(0<=i<=100000000),编号可重复,现在说 一个随机整数k(0<=k<=10 ...

  7. nyoj528 找球号(三) set容器的应用

    set容器的用法  具体可以看我的另外一篇stl的应用点击打开链接 #include <stdio.h> #include <set> using namespace std; ...

  8. nyoj-138-找球号(二)----hash算法之除留余数法+vector

    找球号(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:5 描述 在某一国度里流行着一种游戏.游戏规则为:现有一堆球中,每个球上都有一个整数编号i(0<=i<=1 ...

  9. nyoj--86--找球号(一)(hashset二分)

    找球号(一) 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 在某一国度里流行着一种游戏.游戏规则为:在一堆球中,每个球上都有一个整数编号i(0<=i<=10 ...

最新文章

  1. 算法基础知识科普:8大搜索算法之AVL树(上)
  2. kaggle和colab入门
  3. git reset 命令详解(一)—— Git 学习笔记 07
  4. 机器学习——人工神经网络之后向传播算法(BP算法)
  5. 【雷军】给程序员的五点建议--如何成为编程高手并以此创业
  6. Centos7 开机启动汇总
  7. redux-observable笔记
  8. 关于范数与正则化详解(转)
  9. gan通过python实现_python通过requests库实现爬虫(二)
  10. 如何在 Ubuntu 中安装 QGit 客户端
  11. atitit.php 流行框架 前三甲为:Laravel、Phalcon、Symfony2 attilax 总结
  12. 计算机 修改 虚拟ip,电脑虚拟ip地址怎么弄?
  13. mschart控件_使用MSChart控件绘制图表。
  14. 西门子二代精简屏如何使用U盘下载触摸屏程序
  15. [MtOI2019][奇汁淫巧]幻想乡数学竞赛
  16. iqooneo系统升级好不好_vivo iQOO手机系统更新好吗?
  17. 淘宝店铺将导航和店招修改成通栏
  18. 基于asp.net738房屋租赁管理系统
  19. 四六级热点词汇总结疫情、文化、社会热点、脱贫等
  20. tiktok广告推广怎么能精准展现?什么行业适合在tiktok投放广告?

热门文章

  1. Spring MVC前后台交互(前台ajax传递数据,后台controller接收数据返回json对象)
  2. ASP.NET的TreeView和Menu控件分别绑定siteMap和xml文件并应用母版
  3. Part Six 地理定位API
  4. 20200301:快乐数(leetcode202)
  5. javax maven项目缺少_maven冲突解决流程
  6. ORA-12541 TNS:无监听程序问题解决
  7. 新手学堂:Linux操作系统的启动步骤说明
  8. Visual Basic编程常见问题及解答(2)
  9. SQL Server 轻松解决令你头疼的sa登录
  10. 来学习一下概率论基本知识,它能让防止你的模型过拟合