一列具有 m 个座位的火车,从起点到终点共停靠 n 个站点,站点编号从0到n-1。发车前有x名乘客预定了座位,因为预定数量可能超出座位数,为了保证效率最大化,请计算如何分配才能是座位利用率最大,并输出最大的座位利用数。
说明:
座位利用数定义为每个座位被使用的站数。例如有两个座位,第一个座位从第 0到 10 站有人坐(表示从0站上车,10站下车,第10站不占座,所以利用率是10-0=10),第二个座位从第1到9站有人坐,则座位利用率为(10-0)+(9-1)=18。乘客在某站下车后,其他乘客从这一站就可以开始使用这个座位;无需考虑乘客需要更换座位的问题,保证任意时刻列车上乘客数量不超过 m 即可
在一列具有m个座位的火车上,停靠n个站点,发车前有 ( x ) 名乘客预定了座位。为了确保座位的最大利用率,需要计算如何合理分配座位,并输出最大座位利用数。座位利用数是指每个座位被使用的站数,例如某座位从第 0 站到第 10 站被使用,则其利用数为 10。如果在任意时刻乘客数量超过座位数 ( m ),则分配不合适。输入包括座位数、站点数和乘客数,以及每位乘客的上车和下车站点。输出一个整数,表示最大的座位利用数。
可以暴力模拟所有情况,使用二进制枚举的方法。
用0和1代表乘客不乘坐和乘坐两种情况,用一个数字可以代表所有乘客是否乘坐,枚举这个数的二进制位即可。