问题描述
| 试题编号: | 201903-1 |
| 试题名称: | 小中大 |
| 时间限制: | 1.0s |
| 内存限制: | 512.0MB |
| 问题描述: |
|
代码
n = int(input())
a = list(map(int,input().split()))
# 中位数
mid = (a[(n-1)//2]+a[n//2])/2 # Python3 ‘/’表示真除,结果是浮点数float
# 结果是整数就从float换成int
if int(mid) == mid:
mid = int(mid)
print(max(a),mid,min(a))
最大最小值可以用内置函数max(),min()得出,本题也可以手动比较;
输入是有序数列,中位数直接取最中间两个数的平均值(数组长度奇数则这两位都指向最中间的数)。

本文介绍了一种快速计算给定有序数列的中位数、最大值和最小值的方法,通过Python代码演示了如何利用内置函数max()、min()获取最大最小值,以及如何直接取中间两个数的平均值求得中位数。


859

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



