P12110 [NWRRC2024] False Alarm

题目描述

Faina 正准备睡觉,但她明天早上需要早起参加一场非常重要的比赛。她已经在早上 7:00 到 9:00 之间设置了 $n$ 个不同时间的闹钟。 然而,Faina 是个睡得很沉的人。她知道要想醒来,必须在 10 分钟的时间段内听到至少三个闹钟。换句话说,需要存在三个闹钟,其中第一个和最后一个闹钟之间的时间差不超过 10 分钟。 Faina 不确定当前的闹钟设置是否满足这个条件,她担心可能会睡过头错过比赛(还会让队友生气!)。因此,她想要设置一些额外的闹钟。所有新闹钟也必须在 7:00 到 9:00 之间设置,并且所有闹钟(包括原有的)时间都必须不同。 请找出 Faina 需要设置的最少数量的额外闹钟,以确保她能够醒来。特别地,如果现有的闹钟已经能确保她醒来,则额外闹钟数量为 $0$。

输入格式

第一行包含一个整数 $n$,表示 Faina 已设置的闹钟数量($1 \le n \le 20$)。 接下来的 $n$ 行中,第 $i$ 行以 $\tt{h:mm}$ 格式给出第 $i$ 个闹钟的时间($7 \le \mathtt{h} \le 9$;$00 \le \mathtt{mm} \le 59$;如果 $\mathtt{h} = 9$,则 $\mathtt{mm} = 00$)。闹钟按时间严格递增的顺序给出。

输出格式

输出 Faina 需要设置的最少数量的额外闹钟,以确保能够醒来。

说明/提示

在第一个测试用例中,7:56、7:59 和 8:05 的三个闹钟已经能确保 Faina 醒来。 在第二个测试用例中,任何在 8:00 到 9:00 之间且不与现有闹钟时间重合的时间都可以作为新增闹钟。 在第三个测试用例中,一个可能的解决方案是新增 7:45 和 7:46 两个闹钟。