給定乙個長度為 n 的非負整數序列,請計算序列的最大跨度值(最大跨度值 = 最大值 - 最小值)。
一共 2 行,第一行為序列的個數 n(1 ≤ n ≤ 1000)。
第二行為序列的 n 個不超過 1000 的非負整數,整數之間以乙個空格分隔。
輸出一行,表示序列的最大跨度值。
6
3 0 8 7 5 9
9
思路:
整體思路:
找到這 n 個數的最大值,最小值,最大值減去最小值即為最大跨度值。
具體步驟:
1.定義 n,並輸入 n。
2.定義乙個 int 型的變數 max 用來記錄最大值,並且初始化為 -1。
3.定義乙個 int 型的變數 min 用來記錄最小值,並且初始化為 1010。
4.定義乙個 int 型的變數 x,用來接收輸入的整數。
5.用 for 迴圈將 n 個整數輸入,並且將對每個數判斷,判斷是否比現在
最大的數還大,若是,它就是現在最大的數了。對每個數判斷判斷是否比
現在最小的數還小,若是,它就是現在最小的數了。
// n 個不大於 1000 的非負整數
// 挨個看,從第乙個數,看到第 n 個
for (int i = 1; i <= n; i++)
// 對每個數判斷
// 判斷是否比現在最小的數還小,若是,它就是現在最小的數了
if (x < min)
}
6.輸出最大跨度值:
cout << max - min;
思考:
1°為什麼 max 要初始化為 -1?可以初始化為其他值麼?若可以,可以初始
化為哪些值?可以不初始化麼?
2°為什麼 min 要初始化為 1010?可以初始化為其他值麼?若可以,可以初始
完整**:
#include using namespace std;
int main()
// 對每個數判斷
// 判斷是否比現在最小的數還小,若是,它就是現在最小的數了
if (x < min)
} // 輸出最大跨度值
cout << max - min;
return 0;
}
小韋老師 神犇營 my0049 登入驗證
描述 我們在登入 的時候需要驗證密碼是否正確。現在請你寫乙個程式來驗證登入密碼是否正確。密碼為 5 位數。本題的輸入共 5 行,前 4 行是存進去的 4 個密碼,第 5 行是需要驗證的密碼,需要驗證該密碼是否為存進去的第三個密碼,若是,則輸出 yes 否則輸出 no 輸入本題的輸入共 5 行,前 4...
小韋老師 神犇營 my0184 開關燈
假設有 n 盞燈 n 為不大於 5000 的正整數 從 1 到 n 按順序依次編號,初始時全部處於開啟狀態 有 m 個人 m 為不大於 n 的正整數 也從 1 到 m 依次編號。第乙個人 1 號 將燈全部關閉,第二個人 2 號 將編號為 2 的倍數的燈開啟,第三個人 3號 將編號為 3 的倍數的燈做...
小韋老師 神犇營 my0163 完全數
求正整數 2 和 n 之間的完全數 一行乙個數 完全數 因子之和等於它本身的自然數,如 6 1 2 3 輸入n 1 n 5000 一行乙個數,按由小到大的順序。76破題 考查因子的概念和自定義函式。因子意思是 a 能被 b 整除 a b 0 則說明 b 是 a 的因子。思路 1.首先定義變數 n,並...