Задача: Ряд клавиатуры
https://t.me/pythonlУсловие: дается массив из строк, необходимо вернуть те строки из массива, которые могут быть набраны лишь при использовании знаков из одного ряда.
Пример:
Ввод: words = ["Hello","Alaska","Dad","Peace"]
Вывод: ["Alaska","Dad"]
Объяснение:
Ввод: words = ["omk"]
Вывод: [ ]
Решение: Python
class Solution:
def findWords(self, words: List[str]) -> List[str]:
#
set1 = {'q','w','e','r','t','y','u','i','o','p'}
set2 = {'a','s','d','f','g','h','j','k','l'}
set3 = {'z','x','c','v','b','n','m'}
res = []
for i in words:
wordset = set(i.lower())
if (wordset&set1 == wordset) or (wordset&set2 == wordset) or (wordset&set3 == wordset):
res.append(i)
return res