猜数字游戏的规则如下:

每轮游戏,系统都会从 1 到 n 随机选择一个数字。 请你猜选出的是哪个数字。
如果你猜错了,系统会告诉你这个数字比系统选出的数字是大了还是小了。
你可以通过调用一个预先定义好的接口 guess(int num) 来获取猜测结果,返回值一共有 3 种可能的情况(-1,1 或 0):

-1 : 系统选出的数字比你猜测的数字小
1 : 系统选出的数字比你猜测的数字大
0 : 恭喜!你猜对了!

示例 :

输入: n = 10, pick = 6
输出: 6

代码

/** * Forward declaration of guess API.* @param  num   your guess* @return          -1 if num is lower than the guess number*                1 if num is higher than the guess number*               otherwise return 0* int guess(int num);*/public class Solution extends GuessGame {public int guessNumber(int n) {int l=1,r=n;while (l<=r)//二分查找结果{int mid=(r-l)/2+l;if(guess(mid)==0)return mid;else  if(guess(mid)>0)l=mid+1;else  r=mid-1;}return l;}
}

leetcode374. 猜数字大小(二分法)相关推荐

  1. LeetCode374 猜数字大小 (二分法)

    猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以通过调用一个预先定义好 ...

  2. leetcode-374. 猜数字大小刷题笔记(c++)

    写在前面 常规.简单题目 二分法高效搜索目标值 题目详情 我们正在玩一个猜数字游戏. 游戏规则如下: 我从 1 到 n 选择一个数字. 你需要猜我选择了哪个数字. 每次你猜错了,我会告诉你这个数字是大 ...

  3. leetcode374. 猜数字大小

    我们正在玩一个猜数字游戏. 游戏规则如下: 我从 1 到 n 选择一个数字. 你需要猜我选择了哪个数字. 每次你猜错了,我会告诉你这个数字是大了还是小了. 你调用一个预先定义好的接口 guess(in ...

  4. leetcode374375. 猜数字大小总结

    leetcode374. 猜数字大小(二分的坑) 题目:猜数字游戏的规则如下: 每轮游戏,系统都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,系统会告诉你,你猜测的数字 ...

  5. LeetCode-二分查找-374. 猜数字大小

    374. 猜数字大小 思路:二分法 /** * Forward declaration of guess API.* @param num your guess* @return -1 if num ...

  6. 【LeetCode】第374题——猜数字大小(难度:简单)

    [LeetCode]第374题--猜数字大小(难度:简单) 题目描述 解题思路 代码详解 注意点 题目描述 猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪 ...

  7. python 猜数字大小

    猜数字大小 猜数字游戏的规则如下:每轮游戏,我都会从 1 到 n 随机选择一个数字. 请你猜选出的是哪个数字. 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了. 你可以通过调用一个 ...

  8. 375. 猜数字大小 II

    375. 猜数字大小 II 我们正在玩一个猜数游戏,游戏规则如下: 我从 1 到 n 之间选择一个数字. 你来猜我选了哪个数字. 如果你猜到正确的数字,就会 赢得游戏 . 如果你猜错了,那么我会告诉你 ...

  9. ​LeetCode刷题实战375:猜数字大小 II

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

最新文章

  1. AcWing 734. 能量石 (01背包)+(贪心 - 领项交换)
  2. pandas读取剪切板
  3. android开机启动service
  4. android apr分析,APR分析信号篇
  5. java 中的正则表达式_Java中的正则表达式–软介绍
  6. feign请求的封装
  7. C++之指针探究(六):二级指针和指针数组
  8. 一个双线程下同一时候操作指针变量导致野指针出现的问题总结
  9. 三层交换机如何配置?如何实现不同vlan间的通信?
  10. SCI论文从入门到精通(一)——如何选题
  11. Django--CRM-客户列表展示, 分页
  12. Codeforces Round #553 (Div. 2) 题解
  13. ASP.NET MVC + ADO.NET EF 项目实战(三):引入jQuery
  14. poj 3461 Oulipo kmp 预处理
  15. 计算机科学与工程国际研讨会,2018年北京计算机科学与技术国际研讨会
  16. 《图像语义分析》学习笔记 (一)
  17. 局域网电脑屏幕桌面监控实现方法
  18. vscode access denied to unins000.exe
  19. winrar正确破解方法
  20. 基于matlab的纸币面额面向识别方法设计

热门文章

  1. S3C2440扩展SDRAM
  2. sys/queue.h分析(图片复制不过来,查看原文)
  3. mmap无血缘关系进程间通信
  4. 你花了多久弄明白架构设计?多个java应用同时访问数据库
  5. Java架构师必备框架技能核心笔记,工作感悟
  6. python浅蓝色对应的代码_浅蓝色Python模块不在m上工作
  7. 作业二:个人博客作业内容:需求分析
  8. 分享20个Android游戏源代码。以后看看。
  9. hdu区域赛在线热身赛 暨 第十二场组队赛
  10. 如何获取UIWebView中全屏播放视频事件