Skip to content

Commit

Permalink
猜大小。py&cpp实现
Browse files Browse the repository at this point in the history
  • Loading branch information
Azureki committed Apr 24, 2019
1 parent 32a40df commit be910ce
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 0 deletions.
25 changes: 25 additions & 0 deletions 374. Guess Number Higher or Lower/main.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// 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 left = 1, right = n;
int res, mid;
while (left < right) {
mid = (right - left) / 2 + left;
res = guess(mid);
if (res == -1) {
right = mid - 1;
} else if (res == 1) {
left = mid + 1;
} else {
return mid;
}
}
return left;
}
};
22 changes: 22 additions & 0 deletions 374. Guess Number Higher or Lower/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# The guess API is already defined for you.
# @param num, your guess
# @return -1 if my number is lower, 1 if my number is higher, otherwise return 0
# def guess(num):

class Solution(object):
def guessNumber(self, n):
"""
:type n: int
:rtype: int
"""
left, right = 1, n
while left < right:
mid = (left + right)//2
res = guess(mid)
if res == -1:
right = mid - 1
elif res == 1:
left = mid + 1
else:
return mid
return left

0 comments on commit be910ce

Please sign in to comment.