374. Guess Number Higher or Lower
做题历程:
- 2016/Jul/13 独立解决,11分钟
这是一道货真价实的Easy题,代码非常的常规,就是用最普通的Binary Search,不过多讲解的,代码如下:
// 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) {
// using binary search
int l = 1;
int r = n;
while (l <= r) {
int m = l + (r - l) / 2;
int guess_res = guess(m);
if (guess_res == 0) {
return m;
}
else if (guess_res == -1) {
r = m - 1;
}
else {
l = m + 1;
}
}
return -1;
}
};