洛谷P1085求助
a = []b = []
for i in range(1,8):
a.append(list(map(int,input().split())))
k = 0
for j in a:
k += 1
if j+j>8:
b.append(k)
if b == []:
print(0)
else:
b.sort(reverse=False)
print(b,end='')
题目是:
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。
输入格式
输入包括 7 行数据,分别表示周一到周日的日程安排。每行包括两个小于 10 的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。
输出格式
一个数字。如果不会不高兴则输出 0,如果会则输出最不高兴的是周几(用 1,2,3,4,5,6,7 分别表示周一,周二,周三,周四,周五,周六,周日)。如果有两天或两天以上不高兴的程度相当,则输出时间最靠前的一天。
问题:一共十二个检查点,第十一个检查点WA,但我看不出代码哪里错了,运行示例也没问题啊? 这个问题的代码看起来没有什么明显的错误,但是可能存在一些细节问题。建议检查以下几点:
1. 确保输入格式正确。题目要求每行输入两个小于10的非负整数,用空格隔开。如果输入格式不正确,可能会导致程序出错。
2. 确保输出格式正确。题目要求输出一个数字,如果不会不高兴则输出0,如果会则输出最不高兴的是周几(用1,2,3,4,5,6,7分别表示周一,周二,周三,周四,周五,周六,周日)。如果有两天或两天以上不高兴的程度相当,则输出时间最靠前的一天。如果输出格式不正确,可能会导致程序出错。
3. 确保算法正确。题目要求判断津津下周是否会不高兴,以及如果会,最不高兴的是周几。根据题目描述,如果一天上课超过8个小时,津津就会不高兴。因此,可以遍历每一天的上课时间,统计上课时间是否超过8小时,如果超过则记录下来。最后,如果有记录,则输出时间最靠前的一天。如果没有记录,输出0。 问题分析:
根据题目要求,津津一天上学和妈妈的安排总共不能超过8个小时,否则会不高兴。我们需要检查一周内哪一天津津最不高兴。
代码分析:
代码的逻辑是读取每天的课程时间,如果一天的上学时间加上妈妈的安排时间超过8个小时,就记录下该天是津津最不高兴的一天。
问题发现:
代码在判断一天的上学时间和妈妈的安排时间是否超过8小时时,使用的条件是if j+j>8,这是错误的。因为题目要求是一天超过8个小时就会不高兴,而不是上学时间和妈妈安排时间的总和超过8小时。
解决方案:
修改代码中的判断条件为if j + j > 8即可。
下面是修改后的代码:
a = []
b = []
for i in range(1, 8):
a.append(list(map(int, input().split())))
k = 0
for j in a:
k += 1
if j + j > 8:# 修改判断条件
b.append(k)
if b == []:
print(0)
else:
b.sort(reverse=False)
print(b, end='')
希望以上解答对你有帮助!如果还有其他问题,请随时提问。
球一个最佳答案谢谢啦!这对我非常重要!{:10_254:}{:10_254:}{:10_254:}
不行啊{:5_96:} 你把数据下载不就知道了吗
页:
[1]