二、思路
本题其实就是从 1 - n 中找出所要的答案。利用guess函数来判断数字是否符合答案。
答案小于当前数字,guess函数返回-1
答案等于当前数字,guess函数返回0
答案大于当前数字,guess函数返回1
利用二分查找法即可
三、代码
int guessNumber(int n)
{
int left=1;
int right=n;
int answer=left+(right-left)/2;
while(left<=right)
{
if(guess(answer)==-1)
right=answer-1;
else if(guess(answer)==0)
return answer;
else
left=answer+1;
answer=left+(right-left)/2;
}
return 0;//防止leetcode编译器检查,实际上不需要
}