【題目描述】
給定一個長度為n的非負整數序列,請計算序列的最大跨度值(最大跨度值 = 最大值減去最小值)。
【輸入】
一共2行,第一行為序列的個數n(1 <= n <= 1000),第二行為序列的n個不超過1000的非負整數,整數之間以一個空格分隔。
【輸出】
輸出一行,表示序列的最大跨度值。
【輸入樣例】
6
3 0 8 7 5 9
【輸出樣例】
9
題目分析:
首先思考循環的次數,為n次,然后循環執行的任務是輸入這n個數,代碼如下
#include<iostream>
#include<cstdio>
using namespace std;
int main() {
int n,a;
cin>>n;
for(int i=1;i<=n;i++){
cin>>a;
}
return 0;
}
題目要求找出最大跨度值,其實也就是找出最大值和最小值,然后相減即可,查找最大值和最小值,采用假設法,用假設的最大值max和最小值min依次和輸入的值進行比較,如果輸入的值比max大,就把他賦值給max,輸入的值
比min小,就把他賦值給min
#include<iostream>
#include<cstdio>
using namespace std;
int main() {
int n,a,max=0,min=1000;//max假設的最大值 min假設的最小值
cin>>n;
for(int i=1;i<=n;i++){
cin>>a;
if(max<a)max=a;
if(min>a)min=a;
}
cout<<max-min;
return 0;
}