hpuoj 迴圈陣列最大子段和

2021-07-25 20:09:41 字數 943 閱讀 5006

時間限制: 1 sec

記憶體限制: 128 mb

提交: 19

解決: 6

狀態kaca在做了最大子段和問題之後,思考若陣列可以首尾相接的話最大子段和應該是多少。

有多組測試資料。

每一組的第一行是乙個整數n

n。 下面一行是n

n個以空格分開的整數a

i ai。

1≤n≤

10000

1≤n≤10000 0

≤|ai

|≤106

0≤|ai|≤106

對於每一組資料,輸出當陣列可以首位相接時的最大子段和,佔一行。

6

-1 4 -1 -5 5 1

9

boiltask 提交

論壇 乙個經典的入門dp;51nod演算法課程裡的模板題;

這道題跟最大連續子段和有區別在這裡涉及了迴圈陣列,那麼考慮一下其實這題求的是陣列中的最小連續子段和。

然後sum減去最小連續子段和就是迴圈陣列的最大連續子段和。

思路早就有了不過不知道為啥一直不過……

#include#include#includeusing namespace std;

int n;

typedef long long ll;

ll a[50010];

int main()

ll su=0;

ll su1=0;

ll ma=0;

ll ma1=0;

for(int i=1;i<=n;i++)

}else

}if(su1<=0)

}else}}

printf("%lld\n",max(ma,sum-(-ma1)));

}return 0;

}

迴圈陣列最大子段和(DP)

輸入 第1行 整數序列的長度n 2 n 50000 第2 n 1行 n個整數 10 9 s i 10 9 輸出輸出迴圈陣列的最大子段和。輸入示例 6 2 11 4 13 5 2輸出示例 分析 1 笨方法,我們可以用普通最大子段和的方法解決這個問題。我們從每個位置 斷開 環,然後按普通的最大子段和的方...

迴圈陣列最大子段和 dp

n個整數組成的迴圈序列a11,a22,a33,ann,求該序列如aii ai 1i 1 ajj的連續的子段和的最大值 迴圈序列是指n個數圍成乙個圈,因此需要考慮an 1n 1,ann,a11,a22這樣的序列 當所給的整數均為負數時和為0。例如 2,11,4,13,5,2,和最大的子段為 11,4,...

迴圈陣列的最大子段和

time limit 1000 ms memory limit 65536 kib submit statistic problem description 給出乙個陣列,陣列首尾相連,詢問最大連續子段和為多少。input 首先輸入乙個t表示t 1 t 50 組資料,然後每組資料首先輸入乙個n 1 ...