力扣 500. 鍵盤行 Python / C++
給定一個單詞列表,只返回可以使用在鍵盤同一行的字母列印出來的單詞。鍵盤如下圖所示。
示例:
輸入: [“Hello”, “Alaska”, “Dad”, “Peace”]
輸出: [“Alaska”, “Dad”]
注意:
你可以重複使用鍵盤上同一字元。
你可以假設輸入的字串將只包含字母。
Python
class Solution(object):
def findWords(self, words):
set1 = set("qwertyuiop")
set2 = set("asdfghjkl")
set3 = set("zxcvbnm")
res = []
for i in words:
x = i.lower()##lower函式,整個字串直接變小寫
setx = set(x)
if setx <= set1 or setx <= set2 or setx <= set3:##如果set是set1,set2或set3的子集,則壓入res中
res.append(i)
return res
C++
class Solution {
public:
vector<string> findWords(vector<string>& words) {
vector<string> res;
string s1 = "qwertyuiop";
string s2 = "asdfghjkl";
string s3 = "zxcvbnm";
for(int i = 0; i < words.size(); i++){
int a = 0, b = 0, c = 0;
for(auto x : words[i]){
if(s1.find(tolower(x)) != string::npos) a++;
if(s2.find(tolower(x)) != string::npos) b++;
if(s3.find(tolower(x)) != string::npos) c++;
}
if(words[i].size() == a || words[i].size() == b || c == words[i].size())
res.push_back(words[i]);
}
return res;
}
};
相關文章
- 力扣#43 字串相乘(C++)力扣字串C++
- 【每週例題】力扣 C++ 字串相乘力扣C++字串
- 力扣760. 找出變位對映 C++力扣C++
- c++ 鍵盤/滑鼠互動C++
- 力扣刷題Python筆記:括號生成力扣Python筆記
- 力扣2589 5.16力扣
- Leetcode力扣1 兩數之和(Python版)LeetCode力扣Python
- 力扣(LeetCode)863力扣LeetCode
- 力扣(LeetCode)389力扣LeetCode
- 力扣(LeetCode)796力扣LeetCode
- 力扣(LeetCode)934力扣LeetCode
- 力扣(LeetCode)543力扣LeetCode
- 力扣(LeetCode)513力扣LeetCode
- 力扣(LeetCode)965力扣LeetCode
- 力扣27. 移除元素力扣
- 力扣oj-字串相乘力扣字串
- 力扣之按身高排序力扣排序
- 教你如何玩轉力扣力扣
- 推薦一款 Python 神器,5 行 Python 程式碼 實現一鍵批量扣圖Python
- 力扣 1342. 將數字變成 0 的操作次數 C++力扣C++
- python pynput監聽鍵盤Python
- 【力扣198-打家劫舍】動態規劃(python3)力扣動態規劃Python
- 力扣(LeetCode)103力扣LeetCode
- 力扣(LeetCode)130力扣LeetCode
- 力扣——朋友圈思路分析力扣
- 力扣之存在重複元素力扣
- 力扣-283. 移動零力扣
- 力扣-54. 螺旋矩陣力扣矩陣
- 力扣 22. 括號生成力扣
- 有趣的Python:Python控制鍵盤滑鼠Python
- 力扣 147. 對連結串列進行插入排序力扣排序
- python-input鍵盤輸入Python
- python力扣刷題記錄——771. 寶石與石頭Python力扣
- 力扣(LeetCode)310力扣LeetCode
- 力扣刷題-滑動視窗(字串)力扣字串
- 力扣--連結串列演算法力扣演算法
- 力扣之二分查詢力扣
- 力扣-697. 陣列的度力扣陣列