中国博宜练习题个别问题,望讨论
- 前言
- 题目1
- 解题思路
- 提交后正确代码:
- 个人写的错误代码
- 题目2
- 正确代码2
- 个人写的错误代码2
- 以上是个人目前遇到的两个问题,不知道是直接使用“max”函数的问题 还是什么,如果是
- “max”函数问题第一个测试点应该也会报错,是不是有什么本人没有想到的地方请各位大
- 佬不吝赐教,或者说还是评判本身的问题。可以评论区讨论或者私信我,我会认真看的,感谢!!!!(抱拳)
- 纵有疾风起,人生不言弃。
- 江客:时荒
前言
中国博宜是一个练习题目的地方,个人这两天才尝试做题的过程中发现他们的个别题目问题,大家可以试着做一下博宜练题地址看一下是否会出现问题。
题目1
晶晶上初中了。妈妈认为晶晶应该更加用功学习,所以晶晶除了上学之外,还要参加妈妈为她报名的各科补习班。
晶晶的妈妈给了晶晶的下周每天上补习班的小时数,晶晶同学想知道,下周平均一天要上多少小时的补习班(结果保留 11 位小数),最长的补习班需要上几小时,最短的补习班需要上几小时?
输入
7 个整数,用空格隔开,代表晶晶同学下周 7 天需要上的补习班的小时数。
输出
一个小数和两个整数,用空格隔开,第一个小数代表下周平均每天需要上多少小时补习班(结果保留 11 位小数),第二个整数代表最长的补习班的小时数,第三个整数代表最短的补习班的小时数。
样例
输入
1 3 2 5 4 7 6
输出
4.0 7 1
解题思路
思路很简单,其实就是输出以后直接计算平均值,和最大值最小值。
提交后正确代码:
a,b,c,d,e,f,g=map(int,input().split())
max=0
min=a
if a>max:
max=a
if b>max:
max=b
if c>max:
max=c
if d>max:
max=d
if e>max:
max=e
if f>max:
max=f
if g>max:
max=g
if b<min:
min=b
if c<min:
min=c
if d<min:
min=d
if e<min:
min=e
if f<min:
min=f
if g<min:
min=g
print("%.1f %d %d"%((a+b+c+d+e+f+g)/7,max,min))
这样提交以后代码才是正确的
个人写的错误代码
a=input().split()
b=max(a)
c=min(a)
i=0
sum=0
while i<len(a):
sum=sum+int(a[i])
i+=1
print("%.1f %d %d "%(sum/7,int(b),int(c)))
我还是认为我这个简洁一点,但是每次提交的时候都会在第二点报错
题目2
题目地址
1305 - 求四个数的最大数
已知有四个不等的数,将其中的最大数找出来。
输入
输入只有一行,包括 4 个整数。之间用一个空格分开。
输出
输出只有一行(这意味着末尾有一个回车符号),包括 1 个整数。
样例
输入复制
1 9 8 6
输出复制
9
正确代码2
a,b,c,d=map(int,input().split())
if a>b and a>c and a>d:
print(a)
elif b>a and b>c and b>d:
print(b)
elif c>a and c>b and c>d:
print(c)
else:
print(d)
个人写的错误代码2
a=input().split()
b=max(a)
print("%d\n"%(int(b)))
对于个人写的代码中有没有“\n”都会在测试点2报错我也不知道为什么