描述见题面思路:直接二分是在第几个订单结束的,最后检验一下二分出来的答案可不可行检验思路:使用差分,将前k个(k是二分出来的答案)订单的起始,终止位置之间的所有数减去所需的教室数,最后做一遍前缀和,看是否有哪一天的教室数量小于0,若有小于0的则不能完成订单代码: #include <iostream> using namespace std; const int N = 1000010; int a[N]; // 表示每天有多少教室 int b[N]; // 拷贝数组 int n, m; struct order // 使用结构体存储每一个订单的信息 { int count, st...