貪心 數列極差問題

2021-09-02 16:43:25 字數 732 閱讀 9524

題目描述「我就說你在忽悠我吧,我剛才問了昆士蘭大學的好多魔法師,他們根本就沒有乙個人想過做什麼時間旅行的實驗,但搞笑的是,他們居然對你的理論很感興趣,想找個時間和你做進一步的討論。哎,我還以為他們和我一樣聰明呢,想不到這麼容易上當受騙。」小墨老師擺出一幅你騙不了我的表情。

「唉,你太自以為是了,這樣吧,你先把這道數列極差問題發給他們,如果他們能有所領悟,那我會找時間和他們討論一下時間旅行的可行性的。」李旭琳邊說邊在黑板上寫了n個正整數組成的乙個數列,並進行如下操作:每次擦去其中的兩個數a和b,然後在數列中加入乙個數a×b+1,如此下去直至黑板上剩下乙個數,在所有按這種操作方式最後得到的數中,最大的為max,最小的為min,則該數列的極差定義為m=max-min。

現在請你程式設計,對於給定的數列,計算極差。

輸入輸入包含多個測試集。每個測試集的第乙個數n表示 正整數序列長度(0≤n≤50000),隨後是n個正整數。n為0表示輸入結束。

輸出每個結果一行。

樣例輸入複製樣例資料

3
1 2 3

0樣例輸出2

#include

#include

using namespace std;

int main()

{int a[50],b[50],i,n,min,max;

while(scanf("%d",&n),n){

for(i=0;i當先加小的的時候等到最大值;

先加大的等到最小值;

貪心 數列極差

時間限制 1 sec 記憶體限制 128 mb 提交 9 解決 5 提交 狀態 討論版 命題人 add zmx 在黑板上寫了n個正整數組成的乙個數列,進行如下操作 每次擦去其中的兩個數a和b,然後在數列中加入乙個數a b 1,如此下去直至黑板上剩下乙個數,在所有按這種操作方式最後得到的數中,最大的為...

問題 A 貪心 數列極差問題

題目描述 我就說你在忽悠我吧,我剛才問了昆士蘭大學的好多魔法師,他們根本就沒有乙個人想過做什麼時間旅行的實驗,但搞笑的是,他們居然對你的理論很感興趣,想找個時間和你做進一步的討論。哎,我還以為他們和我一樣聰明呢,想不到這麼容易上當受騙。小墨老師擺出一幅你騙不了我的表情。唉,你太自以為是了,這樣吧,你...

數列極差問題

在黑板上寫了n個正整數排成的乙個數列,進行如下操作 每次擦去其中的兩個數a和b,然後在數列中加入乙個數a b 1,如此下去直至黑板上剩下乙個數,在所有按這種操作方式最後得到的數中,最大的記為max,最小的記作min,則該數列的極差定義位m max min。問題分析 下面通過例項來認識題目中描述的計算...