給乙個定長的元素集,求子串中元素和是k的倍數的最大子串長度。
輸入第一行數序列長度,輸入第二行是序列各元素值,第三行是整數k
輸出序列元素子串和是k倍數的最大長度
分析:
1.元素子串是否都能考慮到,兩層迴圈就可以窮舉
2.字串和計算,並不停比對是否是k倍數,若是記錄子串長度
3.輸出最長子串長度
public
class ratiosubstring
int k;
k = in.nextint();
int sum = 0;
int j = 0;
int l = 0;
int maxl = 0;//更新子串最大長度
for (i = 0; i < m; i++)
if (l > maxl) //一輪迴圈更新最大子串長度
maxl = l;
sum = 0;//下一輪更換子串起點,累加值清零
}system.out.println(maxl);
}}
最開始用的是陣列儲存每個起點開始的最大子串長度,最後精簡用乙個變數儲存。據說並沒有全通過測試用例,不管怎樣,貼出來分享,歡迎交流。 最大子串行的和
講的很詳細。5 1 最大子列和問題 20分 給定kk個整數組成的序列,連續子列 被定義為n i 1 n jn j 其中 1 le i le j le k1 i j k。最大子列和 則被定義為所有連續子列元素的和中最大者。例如給定序列,其連續子列有最大的和20。現要求你編寫程式,計算給定整數序列的最大...
最大子串行和的求法
定義 給定整數a1a a1 a2a a2 a3a a3 ana an 可能有複數 求 k ijak sum ja k ij ak 的最大值 為方便起見,如果所有整數均為負數,則最大子串行和為0 演算法一 int maxsubsequencesum const int a,int n return m...
經典的最大子串行和
給定乙個整數陣列,找到乙個連續子陣列其元素之和最大並返回 input nums output 最大連續子陣列之和 三種解法,分別是動態規劃 貪心法 分治法,其中分治演算法不是最優的。定義d p i dp i dp i 以位置i ii為結尾的子陣列最大和 d p i 1 dp i nums i dp ...