4593: 走,做核算去!

内存限制:128 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:Special Judge 上传者:
提交:0 通过:0

题目描述

最近每天都要做核酸,市区有许多免费核酸点,有的人很多排队很久,有的就比较空闲但又有点远,小明想知道最快做完核酸的方法,于是收集数据建立了一个模型.

每个核酸点有一个开始时间和一个结束时间,以及一个拟合函数f(x,y),表示如果在该核酸点开始时间起的第x(x ≥ 0)分钟开始排队,且核酸点开设总时长为 y 分钟,则需要花费f(x,y)分钟做完核酸. 核酸点开设的起始时刻视为第0分钟,即x = 0,开始之前不能排队,时间都按整数分钟计算. 如果预计做完核酸的时刻大于核酸点结束时刻,则在这里做不到核酸.

这样会不会到得晚反而做完的早?这是个玄学问题,因为有时候会突然多开一个队伍,而小明不敢轻易换队伍,怕随时可能又来一大批人.
但小明可以在到达核酸点之后先不排队,看准时机再上.

已知所有核酸点相关信息,小明想知道最早什么时刻能够做完核酸.

输入格式

100组测试数据,每组数据第一行为整数 n,表示有 n 个核酸点.

接下来 n 行每行顺序给出第 i 个核酸点的相关信息:

  • 起始时刻: hs: msi
  • 结束时刻: he: mei
  • 小明能够到达的最早时刻: hb: mbi
  • 花费时间的参数个数: mi
  • mi 个参数:ai0, ai1, ⋯, aimi-1
  • 所有输入数据均为整数

其中参数描述该函数 f(x,y) = ⌊ |y×sin(ai0+ai1x+ai2x2+⋯+aimi-1xmi-1)| ⌋(“⌊||⌋”表示取绝对值后向下取整), sin() 使用弧度.

  • 1 ≤ n ≤ 100
  • 1 ≤ mi ≤ 6
  • − 6 ≤ ai0, ai1, ⋯, aimi-1≤ 6

时间都为24小时制且只精确到分钟,数据保证各核酸点的起止时间在同一天,即 00:00 ~ 23:59,且开始时间早于结束时间.

输出格式

最早做完核酸的24小时制时刻hf : mf,时与分都为带前导0的二位数,精确到分.

如果小明这一天做不到核酸,输出 “Oh No!”(如果能在某个核酸点结束时刻做完核酸,视为做到了核酸).

输入样例 复制

2
09:00 12:00 11:00 2 1 1
08:30 13:00 10:50 3 1 0 1
1
09:00 15:05 14:40 3 1 5 3
1
15:00 17:00 16:50 4 5 5 4 3

输出样例 复制

11:20
15:05
Oh No!

分类标签