lc374. Guess Number Higher or Lower

374. Guess Number Higher or Lower

We are playing the Guess Game. The game is as follows:python

I pick a number from 1 to n. You have to guess which number I picked.bash

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):ui

-1 : My number is lowerspa

1 : My number is highercode

0 : Congrats! You got it!string

Example :it

Input: n = 10, pick = 6 Output: 6io

思路: 二分查找法class

代碼:python3

class Solution(object):
    def guessNumber(self, n):
        """ :type n: int :rtype: int """
        low=0 
        high=n
        while low<=high:
            gn = (low+high)//2
            res = guess(gn)
            if res==-1:
                high = gn-1
            elif res==1:
                low = gn+1
            else:
                return gn
複製代碼

注意:儘可能少調用guess(n)函數

相關文章
相關標籤/搜索