题目:
思路:
这里不需要去找ransom中的元素是否在magazine中,可以通过设置两个字典dic1和dic2来判断。
dic2中必须要包含dic1中的元素,且dic2元素个数均大于dic1,这样ransom中的元素就一定在magazine中了。
代码如下:
class Solution:
def canConstruct(self, ransomNote: str, magazine: str) -> bool:
dic1 = {}
dic2 = {}
for item in ransomNote:
if item not in dic1:
dic1[item] = 1
else:
dic1[item] += 1
for item in magazine:
if item not in dic2:
dic2[item] = 1
else:
dic2[item] += 1
# 判断dic2中是否有dic1的key,以及dic2 key的数量是否大于dic1
for key in dic1.keys():
if key not in dic2:
return False
if dic2[key] < dic1[key]:
return False
return True