python洛谷做题27:P5724 【深基4.习5】求极差 / 最大跨度值 / 最大值和最小值的差
文章目录
- P5724 【深基4.习5】求极差 / 最大跨度值 / 最大值和最小值的差
- 题目描述
- 输入格式
- 输出格式
- 说明/提示
- 思路分析及代码
P5724 【深基4.习5】求极差 / 最大跨度值 / 最大值和最小值的差
题目描述
给出 nnn 和 nnn 个整数 aia_iai,求这 nnn 个整数中的极差是什么。极差的意思是一组数中的最大值减去最小值的差。
输入格式
第一行输入一个正整数 nnn,表示整数个数。
第二行输入 nnn 个整数 a1,a2…ana_1,a_2 \dots a_na1,a2…an,以空格隔开。
输出格式
输出一个整数,表示这 nnn 个整数的极差。
输入输出样例 #1
输入 #1
6
4 1 5 1 4 1
输出 #1
4
说明/提示
数据保证,1≤n≤1001 \leq n\leq 1001≤n≤100,0≤ai≤10000\le a_i \le 10000≤ai≤1000。
思路分析及代码
本题需要求取最大值和最小值
方法一:
先用循环来解决,根据题目给的范围。设定初始最大值为0,最小值为1000。
循环遍历第二行输入的n个整数,用if判断ai和最大值,最小值。
最后再输出两个最值的差。
n=int(input())
a=list(map(int,input().split()))
maxi=0#根据数值范围给定初始值。
mini=1000
for i in range(n):if a[i]>maxi:maxi=a[i]if a[i]<mini:mini=a[i]
print(maxi-mini)
方法二:
但如果学习了列表的,就知道列表有函数max()求最大值,min()求最小值。
n=int(input())
a=list(map(int,input().split()))
print(max(a)-min(a))