题解 | 记负均正
n=int(input())
list1=list(map(int,input().split()))
kong=0
for i in list1:
kong=kong+i
if kong==0:
print("0 0.0")
else:
c=0
zhengshu=[]
for i in list1:
if i<0:
c=c+1
elif i==0:
continue
elif i>0:
zhengshu.append(i)
s=0
for x in zhengshu:
s=s+x
print("{} {:.1f}".format(c,s/len(zhengshu)))
1.首先考虑当列表全为0的时候,直接输出0 0.0.
2.再分析当列表不为0的时候,依次遍历列表中的元素。当元素为负数的时候,直接计算负数个数记为c。当元素为0的时候,跳出当前循环,直接遍历下一个元素。当元素为正数的时候将元素存入列表zhengsu。
查看14道真题和解析