【题目】
给你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘如下图所示。
美式键盘 中:
第一行由字符 “qwertyuiop” 组成。
第二行由字符 “asdfghjkl” 组成。
第三行由字符 “zxcvbnm” 组成。
【示例 1】
输入:words = [“Hello”,“Alaska”,“Dad”,“Peace”]
输出:[“Alaska”,“Dad”]
【示例 2】
输入:words = [“omk”]
输出:[]
【示例 3】
输入:words = [“adsdf”,“sfd”]
输出:[“adsdf”,“sfd”]
【提示】
1 <= words.length <= 20
1 <= words[i].length <= 100
words[i] 由英文字母(小写和大写字母)组成
【代码】
【Python】
class Solution:
def findWords(self, words: List[str]) -> List[str]:
rs=[]
for ww in words:
cnt=[0]*3
for w in ww:
if w in "qwertyuiopQWERTYUIOP":
cnt[0]+=1
elif w in "asdfghjklASDFGHJKL":
cnt[1]+=1
else:
cnt[2]+=1
if cnt[0]==len(ww) or cnt[1]==len(ww) or cnt[2]==len(ww):
rs.append(ww)
return rs