7 1 最大子列和問題 20 分

2021-09-29 21:40:19 字數 872 閱讀 7968

給定k個整數組成的序列,「連續子列」被定義為,其中 1≤i≤j≤k。「最大子列和」則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大子列和。

本題旨在測試各種不同的演算法在各種資料情況下的表現。各組測試資料特點如下:

資料1:與樣例等價,測試基本正確性;

資料2:102個隨機整數;

資料3:103個隨機整數;

資料4:104個隨機整數;

資料5:105個隨機整數;

輸入格式:

輸入第1行給出正整數k (≤100000);第2行給出k個整數,其間以空格分隔。

輸出格式:

在一行中輸出最大子列和。如果序列中所有整數皆為負數,則輸出0。

輸入樣例:

6-2 11 -4 13 -5 -2

輸出樣例:

20題目思路:

我們可以來看一下這道題,求最大子列和,即求的是連續子串行的和,那麼我們什麼時候才可以求出最大子列和?我們不妨推想,假設有n個數,最大連續子列和的每個數字都應該滿足,該數加上子列中該數的前乙個數應該大於該數本身的值,否則,該數本身可以作為下乙個有可能是最大子列的第乙個數,於是,我們可以獲得**;

#include

#include

using

namespace std;

int a[

100005];

intmain()

else

} cout<}

另外,補充乙個小小的知識點哇:如果我們再定義乙個陣列的時候,把它定義再main函式中,陣列所有的值是被隨機分配的,但如果我們是定義再全域性變數中,陣列中所有的值是被全部初始化為0的(不喜勿噴,歡迎交流哇)。

7 1 最大子列和問題 20分

7 1 最大子列和問題 20分 給定k個整數組成的序列,連續子列 被定義為,其中 1 i j k。最大子列和 則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大子列和。本題旨在測試各種不同的演算法在各種資料情況下的表現。各組測試資...

7 1 最大子列和問題 20分

給定k個整數組成的序列,連續子列 被定義為,其中 1 i j k。最大子列和 則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大子列和。本題旨在測試各種不同的演算法在各種資料情況下的表現。各組測試資料特點如下 輸入第1行給出正整數...

7 1 最大子列和問題 20分

給定k個整數組成的序列,最大子列和 則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大子列和。本題旨在測試各種不同的演算法在各種資料情況下的表現。各組測試資料特點如下 資料1 與樣例等價,測試基本正確性 資料2 102個隨機整數 ...