解法:先建立乙個字典,注意長度為2的字串的值(右邊的值-左邊的值)。
遍歷字串每個字元,判斷當前字元和前乙個字元是否出現在字典中的六種情況特殊情況,如果在就記錄對應的value,否則取當前key對應的value。
注意:1.max函式在這裡是為了防止遍歷第乙個字元的時候出現 [−1:0]的情況。2.本題主要是dict.get()函式的使用。
第一種寫法:
class
solution
:def
romantoint
(self, s:
str)
->
int:
l =dic =
for i,j in
enumerate
(s):
max(i-1,
0):i+1
], dic[j]))
return
sum(l)
第二種寫法:
class
solution
:def
romantoint
(self, s:
str)
->
int:
dic =
return
(sum
(dic.get(s[
max(i-1,
0):i+1
],dic[j]
)for i,j in
enumerate
(s))
)
LeetCode刷題之字串相乘java
給定兩個以字串形式表示的非負整數 num1 和 num2,返回 num1 和 num2 的乘積,它們的乘積也表示為字串形式。示例 1 輸入 num1 2 num2 3 輸出 6 示例 2 輸入 num1 123 num2 456 輸出 56088 public class demo2 public ...
LeetCode刷題之205 同構字串
我不知道將去向何方,但我已在路上!示例 1 輸入 s egg t add 輸出 true示例 2 輸入 s foo t bar 輸出 false示例 3 輸入 s t title 輸出 trueclass solution def isisomorphic self,s str,t str bool...
刷題(leetcode字串相關)
125.驗證回文字串 給定乙個字串,驗證它是否是回文串,只考慮字母和數字字元,可以忽略字母的大小寫。說明 本題中,我們將空字串定義為有效的回文串。思路 將字串中的大寫字母轉成小寫,只保留字母和數字,然後將字串與這個字串的反轉作比較 var ispalindrome function s 對比字串和字...