//二分答案
第一种:ans满足check函数,ans+1不满足
int find(int x)
{
int low=1,high=N,mid;
while(low<high)
{
mid=low+high+1>>1;
if(check(mid)) low=mid;
else high=mid-1;
}
return low;//返回low,high都行
}
第二种:ans满足check,ans+1亦可能满足,而ans-1一定不满足check函数
int find(int x)
{
int low=1,high=N,mid;
while(low<high)
{
mid=low+high>>1;
if(check(mid)) high=mid;
else low=mid+1;
}
return low;//返回low,high都行
}
//视情况修改check函数
24/8/10