LeetCode 374. Guess Number Higher or Lower
2016-07-13 16:06
183 查看
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
(
or
Example:
这个题好坑!
没有明白给出的API返回值,原来"My number"是指正确的那个number,错了几次才明白过来。
还有:
mid = (low + high) / 2;
mid = low + (high - low) / 2;
第一种计算方法会Time Limit Exceeded,原因可能是(low + high)的结果超过int的最大范围,越界。
可以使用第一种公式,但把数据改成long型。
详细分析见点击打开链接
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
(
-1,
1,
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.
这个题好坑!
没有明白给出的API返回值,原来"My number"是指正确的那个number,错了几次才明白过来。
还有:
mid = (low + high) / 2;
mid = low + (high - low) / 2;
第一种计算方法会Time Limit Exceeded,原因可能是(low + high)的结果超过int的最大范围,越界。
可以使用第一种公式,但把数据改成long型。
详细分析见点击打开链接
// Forward declaration of guess API. // @param num, your guess // @return -1 if my number is lower, 1 if my number is higher, otherwise return 0 int guess(int num); class Solution { public: int guessNumber(int n) { int low = 1; int high = n; int res; int mid; while(high > low){ // mid = (low + high) / 2; mid = low + (high - low) / 2; res = guess(mid); if(res == 1) low = mid + 1; else if(res == -1) high = mid - 1; else return mid; } return low; } };
相关文章推荐
- 消除#1366 - Incorrect integer value: '' for column
- LeetCode-Closest Binary Search Tree Value
- Android Studio 的build variants 没有 test artifact问题
- easyUI datagrid自定义添加列 (点击事件)
- Integer不能强制转换为String:toString()、(String)和String.valueOf()的区别
- WinForms UI控件初探:Grid Control 、Data Grid、TreeList
- <s:set>标签中value使用表达式变量的问题
- Leetcode 374. Guess Number Higher or Lower 桌游猜数字 解题报告
- (MyStudy:二)SQLiteDatabase中query、insert、update、delete方法参数说明
- 【奔跑的菜鸟】程序流控制关键字return,break,continue
- LeetCode—374. Guess Number Higher or Lower
- RequireJs入门
- 与平台无关的类型,int8_t,uint8_t
- ios字典功能UIReferenceLibraryViewController
- ue4导出分辨率设置
- POJ 3061 Subsequence
- [leetcode]95. Unique Binary Search Trees II
- queue,deque
- setContentView和inflate区别
- No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '