1015: 湖南省第十八届大学生计算机程序设计竞赛(HNCPC2022) - Semilive
公告 Announcement
E : 走,做核酸去!
- 时间限制Time Limit
- 1 秒Sec
- 内存限制Memory Limit
- 128 兆MB
- 提交次数Submitted
- 156 次Times
- 通过次数Solved
- 43 次Times
| 比对Compare | token 相同即通过。中间的空格、制表符、换行可多可少。Matching tokens pass. Extra spaces, tabs, or newlines between them are ignored. |
|---|---|
| 不同则错Differs | token 个数或内容不同即错误。23 与 2 3、02 与 2、2.0 与 2 均视为不同。A different token count or value is wrong. 23 vs 2 3, 02 vs 2, and 2.0 vs 2 all differ. |
| 输入Input | 标准输入,格式见题面。Standard input; format as in the statement. |
| 输出Output | 标准输出。Standard output. |
| 时间与内存Time and memory | 记这一份程序的 CPU 时间和内存峰值。题目上的时间限制、内存限制就是这一份的上限。The record is this program’s CPU time and peak memory. The limits on the problem apply to this one run. |
题目描述Description
最近每天都要做核酸,市区有许多免费核酸点,有的人很多排队很久,有的就比较空闲但又有点远,小明想知道最快做完核酸的方法,于是收集数据建立了一个模型.
每个核酸点有一个开始时间和一个结束时间,以及一个拟合函数f(x,y),表示如果在该核酸点开始时间起的第x(x ≥ 0)分钟开始排队,且核酸点开设总时长为
y 分钟,则需要花费f(x,y)分钟做完核酸.
核酸点开设的起始时刻视为第0分钟,即x = 0,开始之前不能排队,时间都按整数分钟计算.
如果预计做完核酸的时刻大于核酸点结束时刻,则在这里做不到核酸.
这样会不会到得晚反而做完的早?这是个玄学问题,因为有时候会突然多开一个队伍,而小明不敢轻易换队伍,怕随时可能又来一大批人.
但小明可以在到达核酸点之后先不排队,看准时机再上.
已知所有核酸点相关信息,小明想知道最早什么时刻能够做完核酸.
输入格式Input
100组测试数据,每组数据第一行为整数
n,表示有 n 个核酸点.
接下来 n 行每行顺序给出第 i 个核酸点的相关信息:
- 起始时刻: hsi : msi
- 结束时刻: hei : mei
- 小明能够到达的最早时刻: hbi : 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,且开始时间早于结束时间.
输出格式Output
最早做完核酸的24小时制时刻hf : mf,时与分都为带前导0的二位数,精确到分.
如果小明这一天做不到核酸,输出
“Oh No!”(如果能在某个核酸点结束时刻做完核酸,视为做到了核酸).
样例Sample
提示Hint
对于第一组样例,小明虽然能够在11:00到达第一个核酸点,但选择在11:11开始排队,这时x=131,
f(x) = ⌊|180×sin(1+131)|⌋ = 9,即小明能够在核酸点开始后的第
131+9=140分钟完成检测,即11:20.