【LeetCode】500. Keyboard Row【E】【75】
阿新 • • 發佈:2019-01-25
Given a List of words, return the words that can be typed using letters of alphabet on only one row's of American keyboard like the image below.
Example 1:
Input: ["Hello", "Alaska", "Dad", "Peace"] Output: ["Alaska", "Dad"]
Note:
- You may use one character in the keyboard more than once.
- You may assume the input string will only contain letters of alphabet.
class Solution(object): def findWords(self, words): #row1 = set(['Q','W','E','R','T','Y','U','I','O','P','q','w','e','r','t','y','u','i','o','p']) #row2 = set(['A','S','D','F','G','H','J','K','L','a','s','d','f','g','h','j','k','l']) #row3 = set(['Z','X','C','V','B','N','M','z','x','c','v','b','n','m']) row1 = set('qwertyuiop') row2 = set('asdfghjkl') row3 = set('zxcvbnm') res = [] for i in words: si = set(i.lower()) #if len(si - row1) == 0 or len(si - row2) == 0 or len(si - row3) == 0: if si.issubset(row1) or si.issubset(row2) or si.issubset(row3): res += i, return res """ :type words: List[str] :rtype: List[str] """