题解:P5724 【深基4.习5】求极差 / 最大跨度值 / 最大值和最小值的差
题目の传送门。
在 AFO 的边缘徘徊,看到以前所做的题目开题解区了,特来贡献一篇。
题目分析
题目已经给出了极差的定义即一组数中最大值减去最小值。
那么便只需要遍历这
找出其中的最大值与最小值。
最后相减得出答案。
找到最大值与最小值的过程相当于打擂台。
以最大值为例,先定义一个变量一开始为其赋值一个极小的数。
在遍历数列中,将第
如果更大则更新变量的值。
直到完成遍历即可得到最大值。
最小值也是同理(初始化时要赋值一个极大的数,比对是取更小的值)。
这样排版看上去像不像诗。
Code
#include<iostream>
using namespace std ;
int a[1005];
int main ()
{
int n,minn=1005,maxn=-1;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
if(a[i]<minn)//比对出更小的值
{
minn=a[i];
}
if(a[i]>maxn)//比对更大的值
{
maxn=a[i];
}
}
cout<<maxn-minn<<endl;
return 0;
}
完结撒花。