278. First Bad Version; 374. Guess Number Higher or Lower

278. First Bad Version
# The isBadVersion API is already defined for you.
# @param version, an integer
# @return a bool
# def isBadVersion(version):

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





374. Guess Number Higher or Lower
# 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 = 1
right = n
while left < right:
mid = left + (right-left)/2
if guess(mid) == 1:
left = mid + 1
elif guess(mid) == -1:
right = mid -1
else:
return mid
break
return left


猜你喜欢

转载自www.cnblogs.com/ffeng0312/p/9557918.html