九度 題目1251 序列分割

2021-07-31 11:21:11 字數 597 閱讀 5146

題目描述:乙個整數陣列,長度為n,將其分為m份,使各份的和相等,求m的最大值

比如 可以分成 m=1;

m=2m=3 所以m的最大值為3。

輸入:存在多組資料,每組資料一定行為乙個正整數n(n<=64),第二行為n個數字。當n為0時,測試結束。

輸出:輸出最大值m。

樣例輸入:

9

5 2 1 5 2 1 5 2 1

41 2 3 4

0

樣例輸出:

4 

2

最近懶癌又發作了

數字分組要從陣列最大的元素開始分配,因為一般來說,最大元素配成一組選擇的範圍要小於至多等於稍小的元素,所以**如下:

if(msum[m]==mv)//當前分組剛好符合要求,進行下一組分配

if(rev(v,i+1,msum,m,mv))//表面當前元素能被接納,所以可以進行下乙個元素分組

msum[m]+=v[i];

九度oj 題目1525 子串逆序列印

題目描述 小明手中有很多字串卡片,每個字串中都包含有多個連續的空格,而且這些卡片在印刷的過程中將字串的每個子串都列印反了,現在麻煩你幫小明將這些字串中的子串修正過來,同時為了使卡片美觀,壓縮其中的連續空格為1個。輸入 輸入包含多個測試用例,每個測試用例的第一行是乙個正整數 n,1 輸出 對應每個測試...

九度oj 題目1525 子串逆序列印

題目1525 子串逆序列印 時間限制 1 秒 記憶體限制 128 兆 特殊判題 否 提交 3124 解決 530 題目描述 小明手中有很多字串卡片,每個字串中都包含有多個連續的空格,而且這些卡片在印刷的過程中將字串的每個子串都列印反了,現在麻煩你幫小明將這些字串中的子串修正過來,同時為了使卡片美觀,...

APIO 2014 序列分割

題目鏈結 演算法 首先 我們發現將一段序列切成若干段所獲得的收益與順序無關 於是我們可以用fi,j表示切i次 前j個數的最大收益 令sumi表示ai的字首和 顯然 fi,j max 斜率優化即可 此題記憶體限制較緊 可以使用滾動陣列優化空間複雜度 時間複雜度 o nk includeusing na...