#7031. 公交车站

    ID: 7031 远端评测题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>线下赛小学组第二届上海市青少年算法竞赛小学组

公交车站

题目描述

有一个公交车站,陆续有若干乘客前来排队,也陆续会有一些班车将乘客运走。

共有 nn 班公交车停靠该车站,对班车 ii,有一个时间参数 aia_i,表示它到达车站的时间,以及另外一个装载参数 did_i,表示这一班车能装载的乘客数量:

  • 若排队人多,则优先载运到达时间靠前的乘客;
  • 若排队人少,座位还有剩余,班车不会等待。

共有 mm 位乘客来该站点候车,每名乘客有两个时间参数。

  • 乘客 jj 的第一个参数表示他的到达时间 sjs_j
  • 第二个参数表示他的离开时间 tjt_j。太过漫长的等待会令人失去耐心。若他在时间 tjt_j 前不能上车,乘客 jj 就会离开车站,选择其他交通方式。
  • 若存在两位乘客的到达时间完全一致,则按输入时他们的序号顺序依次排队候车。例如:22 号乘客和 55 号乘客的到达时间相同,我们认为22 号乘客排在 55 号乘客前面。

班车到站时间 aia_i、乘客的到达与离开时间 si,tis_i,t_i 均以 2424 小时制时间给出,以 HH:MM 形式表示,例如8点30分表示为 08:30,小时与分钟均为两位数,不足两位时,首位以 0 补全。

给定所有乘客以及所有班车的信息,请对于每一个乘客,输出他在车站等待上车的时长(单位为分钟),若该乘客放弃等待离开车站,则输出 Leave

输入格式

第一行,两个正整数 nnmm; 接下来 nn 行,每行两个参数 ai,dia_i,d_i,表示第 ii 号班车的到达时间与最大载客数量。 接下来 mm 行,每行两个参数 si,tis_i,t_i,表示第 ii 号乘客的到达时间与离开时间。

输出格式

mm 行:表示 mm 个乘客的等待时间长度。

3 6
09:10 3
08:30 2
10:20 4
09:05 09:15
09:01 09:22
08:31 09:20
09:05 10:00
10:10 10:15
08:30 08:33
5 
9 
39 
Leave 
Leave 
0

样例解释 1

1,2,3号乘客选乘09:10这班车,等待时间分别为5分钟、9分钟、39分钟。 4号乘客和1号乘客到达时间相同,排在1号乘客后面,因载客量未能乘09:10这班车,直到放弃时间没有公交车前来,则放弃乘坐 5号乘客直到放弃时间没有公交车前来,则放弃乘坐 6号乘客到站直接乘坐08:30这班车,等待时长为0分钟

数据范围

  • 对于30%30\%的数据,1n5,1m101 \leq n \leq 5 , 1 \leq m \leq 10
  • 对于50%50\%的数据,1n100,1m10001 \leq n \leq 100,1 \leq m \leq 1000
  • 对于100%100\%的数据,1n1000,1m100001 \leq n \leq 1000,1 \leq m \leq 10000

数据保证所有 2424 小时制的时间数字是合理的,并且所有的时间区间不会出现跨过某天零点的情况。