题目描述
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。
输入格式
输入包括 777 行数据,分别表示周一到周日的日程安排。每行包括两个小于 101010 的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。
输出格式
一个数字。如果不会不高兴则输出 000,如果会则输出最不高兴的是周几(用 1,2,3,4,5,6,71, 2, 3, 4, 5, 6, 71,2,3,4,5,6,7 分别表示周一,周二,周三,周四,周五,周六,周日)。如果有两天或两天以上不高兴的程度相当,则输出时间最靠前的一天。
输入输出样例
输入
5 3
6 2
7 2
5 3
5 4
0 4
0 6
输出
3
方式-字典
代码
class Solution:
@staticmethod
def oi_input():
"""从标准输入读取数据"""
day_data = {}
for day in range(1, 8): # 直接存储周一到周日的原始数据
school, mom = map(int, input().split())
day_data[day] = (school, mom)
return day_data
@staticmethod
def oi_test():
"""提供测试数据"""
return {
1 : (5, 3), # 周一
2 : (6, 2), # 周二
3 : (7, 2), # 周三
4 : (5, 3), # 周四
5 : (5, 4), # 周五
6 : (0, 4), # 周六
7 : (0, 6) # 周日
}
@staticmethod
def solution(day_data):
max_h = 0
max_day = 0
for day, (school, mom) in day_data.items():
'''items() 将字典转成 --[(1, (5,3)), (2, (6,2)), ...]'''
total = school + mom
if total > 8 and total > max_h: # 同时满足超时和当前最大值
max_h = total
max_day = day
print(max_day)
oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solution
if __name__ == '__main__':
day_data = oi_test()
# day_data = oi_input()
solution(day_data)
883

被折叠的 条评论
为什么被折叠?



