zoukankan      html  css  js  c++  java
  • LeetCode

    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 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.


    Solution:

     1 /* The guess API is defined in the parent class GuessGame.
     2    @param num, your guess
     3    @return -1 if my number is lower, 1 if my number is higher, otherwise return 0
     4       int guess(int num); */
     5 
     6 public class Solution extends GuessGame {
     7     public int guessNumber(int n) {
     8         int low = 1;
     9         int high = n;
    10         
    11         while (low<=high){
    12             int mid = (high-low)/2 + low;
    13             int res = guess(mid);
    14             if (res == 0){
    15                 return mid;
    16             } else if (res == -1) {
    17                 high = mid-1;
    18             } else {
    19                 low = mid+1;
    20             }
    21         }
    22         
    23         return -1;
    24     }
    25 }
  • 相关阅读:
    malloc和new的区别
    Http协议解析
    Linux基础命令-history
    Linux基础命令-last
    Linux基础命令-who
    Linux基础命令-free
    Linux基础命令-uptime
    Linux基础命令-uname
    Linux基础命令-ifconfig
    Linux基础命令-killall
  • 原文地址:https://www.cnblogs.com/lishiblog/p/5681251.html
Copyright © 2011-2022 走看看