我引用我自己的想法,但是已经超过了时间限制。
这是问题的链接 - https://codeforces.com/problemset/problem/237/A
A. 免费收银台
Valera 是一家 24 小时快餐店的主管。他神奇地发现明天会有 n 个人访问他的咖啡馆。对于每个人,他到达的时间是已知的:第 i 个人将在 hi 小时 mi 分钟准确到达。每个客户都在不到一分钟的时间内得到服务,但是,如果客户到达并看到没有免费的收银台,他拒绝等待并立即离开该机构。
Valera 很贪心,所以他想明天为所有 n 个客户服务(这样他会得到更多的利润)。但是,为此,每个时刻工作的收银台的数量必须不少于当时来到咖啡馆的顾客数量。
帮助 Valera 计算明天必须在他的咖啡馆开放的最小收银台数量,以便为所有顾客提供服务。
规格 输入 第一行包含一个整数 n (1 ≤ n ≤ 105),表示咖啡馆的访客人数。
接下来的 n 行中的每一行都包含两个以空格分隔的整数 hi 和 mi(0 ≤ hi ≤ 23;0 ≤ mi ≤ 59),表示第 i 个人来到咖啡馆的时间。
请注意,时间是按时间顺序给出的。所有时间都设置在一天之内。
输出 输出一个整数——明天为所有客户提供服务所需的最少收银机数量。
n = int(input())
x = []
x1 = []
for i in range(n):
a = list(map(int, input().split()))
x.append(a)
for i in range(n):
x1.append(x.count(x[i]))
print(max(x1))
理论上,您可以简单地将当前日期与过去日期进行比较,如果相等,则将收银机的潜在数量增加
cand_cashboxes1,否则将其放入结果中cashboxesif beforecashboxes < cand_cashboxes。使用
groupby: