時間限制: 1 秒 記憶體限制: 64 mb
提交: 353 解決: 83 提交
狀態 題目描述
乙個大小為n的陣列a1到an(−10^4≤ai≤10^4)。請你找出乙個連續子段,使子段長度為奇數,且子段和最大。 輸入
第一行為t(1≤t≤5),代表資料組數。
之後每組資料,第一行為n(1≤n≤10^5),代表陣列長度。
之後一行n個數,代表a1到an。 輸出
每組資料輸出一行,表示滿足要求的子段和最大值
樣例輸入
141 2 3 4樣例輸出
9
由於要求字段長度為奇數,則有兩種情況:1.奇數=偶數-奇數 2.奇數=奇數-偶數;分別求出兩種情況下子段的最小值,用1~此點的總和減去即可,具體看**和注釋
#include #includeint dp[100005];//1~n的總和
using namespace std;
int main()
int min1=dp[1],min2=0;
int ans=-100000;
for(int i=1;i<=n;i++)
else
}cout<}
return 0;
}
HAUTOJ奇數最大子段和
題目描述 乙個大小為n的陣列a1到an 10 4 ai 10 4 請你找出乙個連續子段,使子段長度為奇數,且子段和最大。輸入 第一行為t 1 t 5 代表資料組數。之後每組資料,第一行為n 1 n 10 5 代表陣列長度。之後一行n個數,代表a1到an。輸出 每組資料輸出一行,表示滿足要求的子段和最...
最大子段和
設a 是n個整數的序列,稱為該序列的子串行,其中1 i j n.子串行的元素之和稱為a的子段和.例如,a 2,11,4,13,5,2 那麼它的子段和是 長度為1的子段和 2,11,4,13,5,2 長度為2的子段和 9,7,9,8,7 長度為3的子段和 5,20,4,6 長度為4的子段和 18,15...
最大子段和
問題表述 n個數 可能是負數 組成的序列a1,a2,an.求該序列 例如 序列 2,11,4,13,5,2 最大子段和 11 4 13 20。1 窮舉演算法 o n3 o n2 2 分治法 將序列a 1 n 從n 2處截成兩段 a 1 n 2 a n 2 1 n 例項 三 最大子段和 問題表述 n個...