这个题目很简单,但是要注意细节和对题目的理解,一开始我把guess函数的作用理解错了,第一版代码长这样:

 int guessNumber(int n)
{
int low = ;
int high = n; while(low < high)
{
int mid = (high + low) / ;
int g = guess(mid);
if(g == )
return mid;
else if(g > )
low = mid + ;
else
high = mid - ;
} return low; }

在重新读了几次题目之后,第二版代码长这样:

 int guessNumber(int n)
{
int low = ;
int high = n; while(low < high)
{
int mid = (high + low) / ;
int g = guess(mid);
if(g == )
return mid;
else if(g < )
low = mid + ;
else
high = mid - ;
} return low; }

但是还是不能正确通过,这很尴尬:查了半天发现是上面标注的那段代码有问题,我一直以为把代码写成最简单的数学表达式是一个好选择,但是这里显然不是这样:因为这样当high和low都比较大时,这是会导致溢出!所以有了第三个版本的代码:

int guessNumber(int n)
{
int low = ;
int high = n; while(low < high)
{
int mid = low + (high - low) / ;
int g = guess(mid);
if(g == )
return mid;
else if(g < )
low = mid + ;
else
high = mid - ;
}
return low;
}

leetcode 374的更多相关文章

  1. [LeetCode] 374. Guess Number Higher or Lower 猜数字大小

    We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...

  2. leetcode 374. Guess Number Higher or Lower 、375. Guess Number Higher or Lower II

    374. Guess Number Higher or Lower 二分查找就好 // Forward declaration of guess API. // @param num, your gu ...

  3. Java实现 LeetCode 374 猜数字大小

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

  4. LeetCode 374. Guess Number Higher or Lower

    We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...

  5. [LeetCode] 374. Guess Number Higher or Lower_Easy tag: Binary Search

    We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have to gues ...

  6. Python [Leetcode 374]Guess Number Higher or Lower

    题目描述: We are playing the Guess Game. The game is as follows: I pick a number from 1 to n. You have t ...

  7. leetcode 374. 猜数字大小(python)

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

  8. leetcode 374猜数字大小

    // Forward declaration of guess API. // @param num, your guess // @return -1 if my number is lower, ...

  9. Java实现 LeetCode 374 猜数字大小 II

    375. 猜数字大小 II 我们正在玩一个猜数游戏,游戏规则如下: 我从 1 到 n 之间选择一个数字,你来猜我选了哪个数字. 每次你猜错了,我都会告诉你,我选的数字比你的大了或者小了. 然而,当你猜 ...

随机推荐

  1. [Cocos2d-x For WP8]DrawPrimitives画图

    在Silverlight框架的WP8应用程序里面,我们画几何图形的时候会通过Line等等的类在用C#代码或者在XAML上画图,那么在Cocos2d-x For WP8里面我们一样也可以实现这样的功能. ...

  2. ORA-01034错误:ORALCE NOT CONNECT

    解决办法: 启动数据库 sqlplus '/as sysdba '  startup;

  3. 【JAVA基础】 MAP 遍历

    public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...

  4. weblogic 11g 配置db2数据源

    配置db2数据源可以直接在包里面配置,不需要专门在服务器上配置数据源. 在11g版本前要配置db2数据源是需要增加包,后续的版本处理了这个问题. 1. 将C:\Program Files\SQLLIB ...

  5. MongoDB使用操作

    一.mongodb常用命令 http://www.cnblogs.com/cxd4321/archive/2011/06/24/2089051.html 二.MongoDB基本使用 http://ww ...

  6. Setting start page of Windows Phone dynamically through code

    Essentially this one line of code will set the start page of the application. var navTo = new Uri(&q ...

  7. Watering Grass

    题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=85904#problem/E 题意: 给定一条草坪,草坪上有n个喷水装置.草坪长 ...

  8. cookie的设置、获取和删除封装

    在我们为了去完成数据储存,有时会用到cookie,简单封装一下cookie: <!DOCTYPE html> <html lang="en"> <he ...

  9. Odoo 9 Odoo $ JQuery undifned

    浏览器处于假死状态,查看console发现 odoo,jquery,$ 未定义三处错误,后台显示IOError: IOError: [Errno 2] No such file or director ...

  10. FK JavaScript:ArcGIS JavaScript类库加载不成功而导致的程序异常

    现象:页面加载时,有时候成功,有时候出错,出错的地方为init.js 加载esri的类库 经过仔细对比,发现出错时dojo加载的类库中,对象的很多属性都为undefined,而加载成功时,该对象的相关 ...