LeetCode简单题之重新分配字符使所有字符串都相等
題目
給你一個(gè)字符串?dāng)?shù)組 words(下標(biāo) 從 0 開始 計(jì)數(shù))。
在一步操作中,需先選出兩個(gè) 不同 下標(biāo) i 和 j,其中 words[i] 是一個(gè)非空字符串,接著將 words[i] 中的 任一 字符移動(dòng)到 words[j] 中的 任一 位置上。
如果執(zhí)行任意步操作可以使 words 中的每個(gè)字符串都相等,返回 true ;否則,返回 false 。
示例 1:
輸入:words = [“abc”,“aabc”,“bc”]
輸出:true
解釋:將 words[1] 中的第一個(gè) ‘a(chǎn)’ 移動(dòng)到 words[2] 的最前面。
使 words[1] = “abc” 且 words[2] = “abc” 。
所有字符串都等于 “abc” ,所以返回 true 。
示例 2:
輸入:words = [“ab”,“a”]
輸出:false
解釋:執(zhí)行操作無法使所有字符串都相等。
提示:
1 <= words.length <= 100
1 <= words[i].length <= 100
words[i] 由小寫英文字母組成
來源:力扣(LeetCode)
解題思路
??依據(jù)題意,如果words里所有的字符都能夠均分到每一個(gè)word上就算成立,也就是每個(gè)字符的頻率必須能夠被words.length整除。
class Solution:def makeEqual(self, words: List[str]) -> bool:d={}for i in words:for j in i:d[j]=d.get(j,0)+1return all(not d[i]%len(words) for i in d.keys())
總結(jié)
以上是生活随笔為你收集整理的LeetCode简单题之重新分配字符使所有字符串都相等的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode简单题之两个数对之间的最
- 下一篇: LeetCode简单题之判断句子是否为全