博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 374. Guess Number Higher or Lower
阅读量:6435 次
发布时间:2019-06-23

本文共 1267 字,大约阅读时间需要 4 分钟。

374. Guess Number Higher or Lower

 
QuestionEditorial Solution
 
 
  • Total Accepted: 6632
  • Total Submissions: 21010
  • Difficulty: Easy

 

We are playing the Guess Game. The game is as follows:

 

I pick a number from 1 to n. You have to guess which number I picked.

Every time you guess wrong, I'll tell you whether the number is higher or lower.

You call a pre-defined API guess(int num) which returns 3 possible results (-11, or 0):

-1 : My number is lower 1 : My number is higher 0 : Congrats! You got it!

Example:

n = 10, I pick 6.Return 6. 题解: 简单的二分,需要注意:
用mid = l + (r - l) / 2;不要用mid = (l + r) / 2;会溢出

 

 

1 // Forward declaration of guess API. 2 // @param num, your guess 3 // @return -1 if my number is lower, 1 if my number is higher, otherwise return 0 4 int guess(int num); 5  6 class Solution { 7 public: 8     int guessNumber(int n) { 9         int l = 1,r = n;10         int mid = (l + r) / 2;11         while(l < r){12             mid = l + (r - l) / 2;13             int re = guess(mid);14             if(re == 0) return mid;15             else if(re == 1){16                 l = mid + 1;17             }18             else{19                 r = mid - 1;20             }21         }22         return l;23     }24 };

 

转载于:https://www.cnblogs.com/njczy2010/p/5687123.html

你可能感兴趣的文章
nutch 部署到eclipse常见错误
查看>>
zabbix报警发邮件的频率和trigger检测频率一样
查看>>
Linux下Shell脚本输出带颜色文字
查看>>
固定td标签的宽度,table边框1像素
查看>>
Android 数据库异常处理
查看>>
Android 数据库中的错误
查看>>
SSH bash紧急安全补丁
查看>>
我的友情链接
查看>>
Servlet以及spring mvc实现bigpipe技术分享
查看>>
java小程序查看器
查看>>
服务器数据丢失紧急处理办法
查看>>
分享23款使用纯CSS3生成的知名logo设计
查看>>
在vSphere ESXi6 中成功安装 Nexus 1000v n1000v-dk9.5.2.1.SV3.1.10
查看>>
MaxCompute Optimizer之表达式约化
查看>>
聊聊lombok构造模式的参数校验
查看>>
Linux基础学习—2
查看>>
iOS技巧之获取本机通讯录中的内容,解析通讯录源代码
查看>>
程序员从零到月薪15K的转变,python200G资料分享
查看>>
DNS域名解析的知识了解
查看>>
部署社交网站
查看>>