滑動視窗 求最長連續子陣列

2022-05-08 12:03:08 字數 891 閱讀 9230

給定乙個陣列 和乙個數字k =4。求這個陣列的乙個最長連續子陣列,這個最長連續子陣列中所有數字的和必須小於或等於k。 例如,上面這個例子中,連續子陣列有這麼多種情況: , , , , , , , , , 。 其中符合條件的就只有。

**分析的資料跟題目不一樣但是換湯不換藥(╯▽╰ )

;//存放基礎資料

int k = 4;//

目標 int sum[9]={};

int len[9]={}; //

滑窗長度

int loclen = 0; //

記錄當前滑窗長度

int locsum = 0; //

記錄當前滑窗求和

int startindex = 0; //

記錄滑窗起始位置

for (int i = 0;i < 9;i++)

else

}printf(

"sum= ");

for (int i = 0;i < 9;i++)

printf(

"%d

", sum[i]);

printf(

"\nlen= ");

for (int i = 0;i < 9;i++)

printf(

"%d

", len[i]);

printf("\n

");return0;

}

滑動視窗求滿足的子陣列個數

題目 給定陣列arr和整數num,返回有多少個子陣列滿足如下情況 max arr i.j min arr i.j num max arr i.j 表示子陣列arr i.j 中的最大值,min arr i.j 表示子陣列arr i.j 中的最小值。如果陣列長度為 n,請實現時間複雜度為 o n 的解法...

Leetcode 滑動視窗 AC替換最長連續相同串

給定乙個只包含a和c的字串,你可以任意修改最多k個字元,讓a變成c,或者c變成a。請問修改完之後,最長連續相同字元的長度是多少。1,aaac 4類似於連續的問題,採取滑動視窗,維護乙個l r的視窗,確保視窗內的在最多k次調整下,可以組合成相同的字串。基本策略 當視窗內a的字元 c的字元都大於k時,那...

求最長連續公共子串

說到求最長公共子串首先想到的是逐個子串比較,但是那樣的話演算法的複雜度太高,後來就想到用矩陣的方法去解決 思路如下 比如字元創a abcdefg 和字串b bdeabc 建立矩陣如下圖所示 發現如果連續的斜線值為1的長度最長的話 則為最長公共子串 則abc為最長公共子串 那我們可把矩陣進化為 我們在...