二分答案

在一个给定区间内,通过二分查找来找到所需要的答案

int N, ans;
bool check(int value)
{
	
}
void binary_search()
{
    int left = 0, right = N;
    while (left <= right)
    {
        int mid = (left + right) >> 1; // mid = (left + right) / 2
        if (check(mid))  
		{  
		    ans = mid;  // mid满足要求
		    left = mid + 1;  //尝试更大的可能
		}  
		else  
		    right = mid - 1; // mid不满足要求,尝试更小的可能
	}
}