1781 所有子字串美麗值之和

2021-10-22 16:53:21 字數 1580 閱讀 9878

題目描述:

乙個字串的 美麗值 定義為:出現頻率最高字元與出現頻率最低字元的出現次數之差。

比方說,「abaacc」 的美麗值為 3 - 1 = 2 。

給你乙個字串 s ,請你返回它所有子字串的 美麗值 之和。

示例 1:

輸入:s = 「aabcb」

輸出:5

解釋:美麗值不為零的字串包括 [「aab」,「aabc」,「aabcb」,「abcb」,「bcb」] ,每乙個字串的美麗值都為 1 。

示例 2:

輸入:s = 「aabcbaa」

輸出:17

1 <= s.length <= 500

s 只包含小寫英文本母。

方法1:

(1)滑動視窗;

(2)使用各個可能長度的滑動視窗去統計滿足要求的美麗數;

class

solution

for(

int&i : mp)}if

(cur_min !=

10000

)int left =

0, right = k;

while

(right < s.

size()

)}if(cur_min !=

10000

)++right;

++left;

}return res;

}int

beautysum

(string s)

int res =0;

for(

int i =

3; i <= s.

size()

;++i)

return res;

}

go語言實現

func

max(lhs,rhs int

)int

return rhs

}func

min(lhs,rhs int

)int

return rhs

}func

get_k

(s string

,k int

)int

for_

,v :=

range mp

}if cur_min!=

10000

left :=

0 right :=k

for right <

len(s)

}if cur_min!=

10000

right++

left++

}return res

}func

beautysum

(s string

)int

res :=

0for i:=

3;i<=

len(s)

;i++

return res

}

所有子字串美麗值之和

乙個字串的 美麗值 定義為 出現頻率最高字元與出現頻率最低字元的出現次數之差。比方說,abaacc 的美麗值為 3 1 2 給你乙個字串 s 請你返回它所有子字串的 美麗值 之和 1.力扣第47場周賽第三題,想了很久用動態規劃,或用別的方法。2只能.暴力 兩重遍歷所有子串,陣列統計字元解決 暴力 好...

找出字串的所有子字串

字首樹實現,遍歷字串。把字串中的每乙個字元都視為字首,用乙個字首樹儲存以每乙個字元為開頭的字串 舉例為 abbc 然後遍歷字首樹,把每個子樹的每一層都作為乙個字串輸出即可。import copy class trienode object def init self,word self.word w...

刪除字串中所有給定的子串

問題描述 在給定字串中查詢所有特定子串並刪除,如果沒有找到相應子串,則不作任何操作。要求實現函式 int delete sub str const char str,const char sub str,char result str 輸入 str 輸入的被操作字串 sub str 需要查詢並刪除的...