374.guess-number-higher-or-lower.java 526 B

12345678910111213141516171819202122
  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. public class Solution extends GuessGame {
  6. public int guessNumber(int n) {
  7. int beg = 1, end = n;
  8. while (beg <= end) {
  9. int mid = beg + (end - beg) / 2;
  10. int val = guess(mid);
  11. if (val == -1) {
  12. end = mid - 1;
  13. } else if (val == 1) {
  14. beg = mid + 1;
  15. } else {
  16. return mid;
  17. }
  18. }
  19. return beg;
  20. }
  21. }