712 兩個字串的最小ASCII刪除和

2021-10-12 07:29:22 字數 1353 閱讀 7525

解題思路主要**於leetcode官方與《程式設計師面試寶典》。

給定兩個字串s1, s2,找到使兩個字串相等所需刪除字元的ascii值的最小和。

示例 1:

輸入: s1 = 「sea」, s2 = 「eat」

輸出: 231

解釋: 在 「sea」 中刪除 「s」 並將 「s」 的值(115)加入總和。

在 「eat」 中刪除 「t」 並將 116 加入總和。

結束時,兩個字串相等,115 + 116 = 231 就是符合條件的最小和。

示例 2:

輸入: s1 = 「delete」, s2 = 「leet」

輸出: 403

解釋: 在 「delete」 中刪除 「dee」 字串變成 「let」,

將 100[d]+101[e]+101[e] 加入總和。在 「leet」 中刪除 「e」 將 101[e] 加入總和。

結束時,兩個字串都等於 「let」,結果即為 100+101+101+101 = 403 。

如果改為將兩個字串轉換為 「lee」 或 「eet」,我們會得到 433 或 417 的結果,比答案更大。

注意:0 < s1.length, s2.length <= 1000。

所有字串中的字元ascii值在[97, 122]之間。

參考資料1:

class solution 

return dp(s1,0,s2,0);

}//定義:將 s1[i..] s2[j..] 刪除成相同的子串行,最小的 ascii 碼之和為 dp(s1, i, s2, j)

712 兩個字串的最小ASCII刪除和

給定兩個字串s1,s2,找到使兩個字串相等所需刪除字元的ascii值的最小和。示例 1 輸入 s1 sea s2 eat 輸出 231 解釋 在 sea 中刪除 s 並將 s 的值 115 加入總和。在 eat 中刪除 t 並將 116 加入總和。結束時,兩個字串相等,115 116 231 就是符...

連線兩個字串

include include void main char lianjie char a 30 char b 30 原型 extern char strcat char dest,char src 用法 include 功能 把src所指字串新增到dest結尾處 覆蓋dest結尾處的 0 並新增 ...

交換兩個字串

交換兩個字串,原來的字串分別為 學生 和 好 字串輸出顯示為 學生好 交換後輸出顯示為 好學生 include using namespace std int main char c1 5 學生 char c2 3 好 char m,n,t m c1 n c2 cout 交換前 m n n t co...