#牛客在线求职答疑中心#小潘今年来到贵工程读大学,大学的生活多姿多彩。 大学里面有很多社团,每一个社团都会举办一些活动。 小潘是一个积极向上的孩子,想多参加一些活动。 我们大家都知道不同的活动有不同的学分。 每一个活动有开始时间和结束时间。明天就是周末啦,每个社团举办活动都会提前把活动开始的时间,活动结束的时间及活动的学分发布在学校的微信公众号上。 小潘和你聊起了明天要去参加活动,看到上面有很多活动,他想要参加更多的活动,但是有的活动会冲突,你和小潘一起计算了明天最多可以参加多少个活动,及可以得到多少学分?输入格式:第一行,n代表活动的数量。 (n第二行开始到n + 1行,每一行都有s,e,f(s活动开始的时间,e活动结束的时间,f活动的分数),s, e, f为正整数,,s,e 输出格式:请输出小潘最多可以参加多少个活动,及得到的分数。pta python def max_activities_optimized(n, activities): # 按结束时间排序 activities.sort(key=lambda x: x[1]) # 记录当前最优的活动数和总分 max_count = 0 max_score = 0 # 记录上一个选择的活动的结束时间(初始化为-1表示还没有选择任何活动) last_end_time = -1 for s, e, f in activities: # 如果当前活动的开始时间不早于上一个选择的活动的结束时间,则选择该活动 if s >= last_end_time: max_count += 1 max_score += f last_end_time = e # 更新上一个选择的活动的结束时间 return max_count, max_score# 读取输入n = int(input())activities = []for _ in range(n): s, e, f = map(int, input().split()) activities.append((s, e, f))# 计算结果result = max_activities_optimized(n, activities)# 输出结果print(result[0], result[1])有些测试点不通过