你的朋友正在使用鍵盤輸入他的名字 name。偶爾,在鍵入字元 c 時,按鍵可能會被長按,而字元可能被輸入 1 次或多次。
你將會檢查鍵盤輸入的字元 typed。如果它對應的可能是你的朋友的名字(其中一些字元可能被長按),那麼就返回 true。
示例 1:
輸入:name = 「alex」, typed = 「aaleex」示例 2:輸出:true
解釋:『alex』 中的 『a』 和 『e』 被長按。
輸入:name = 「saeed」, typed = 「ssaaedd」示例 3:輸出:false
解釋:『e』 一定需要被鍵入兩次,但在 typed 的輸出中不是這樣。
輸入:name = 「leelee」, typed = 「lleeelee」示例 4:輸出:true
輸入:name = 「laiden」, typed = 「laiden」思路參考:輸出:true
解釋:長按名字中的字元並不是必要的。
class
solution
(object):
defislongpressedname
(self, name, typed)
:"""
:type name: str
:type typed: str
:rtype: bool
"""m =
len(name)
n =len(typed)
i, j =0,
0while i < m:
c_i = name[i]
count_i =
0 count_j =
0while i < m and name[i]
== c_i:
i +=
1 count_i +=
1while j < n and typed[j]
== c_i:
j +=
1 count_j +=
1if count_j < count_i:
return
false
return
true
2023年3月25日 於燕園北 leetcode刷題記錄
我覺得每天來兩道,練習練習,再看看人家是怎麼優化的。1.給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。c 暴力求解,204ms,9.1m class solution for index,num in enumerate ...
LeetCode刷題記錄
動態規劃和貪心演算法的異同點 class solution throw newruntimeexception 時間複雜度 o n 2 對於每個元素,我們試圖通過遍歷陣列的其餘部分來尋找它所對應的目標元素,這將耗費 o n o n 的時間。因此時間複雜度為 o n 2 需要一種方法,尋找符合要求的元...
leetcode刷題記錄
工作之餘刷刷題排解下寂寞 1 面試題66.構建乘積陣列 解題思路 題目要求可以簡化為求陣列中任意乙個元素左右兩邊所有元素的乘積。偷懶就用了乙個套路,練習了p c c python class solution def constructarr self,a list int list int 除法是...