該題Jewels and Stones的題目如下所示,想要從S矩陣中找出有幾個J矩陣的元素,範例1中,有一個J矩陣中有a以及A的元素,在給定一個S矩陣,該例子中,S矩陣中共有1個a以及2個A,因此輸出為3,範例2中,J矩陣的元素為z,而S矩陣的元素為Z,S矩陣中完全沒有包含J矩陣的元素,因此輸出為0。
Example 1:
Input: J = "aA", S = "aAAbbbb"
Output: 3
Example 2:
Input: J = "z", S = "ZZ"
Output: 0
作法解析:宣告一個set型態,並將J矩陣的元素放入其中,若S矩陣中有J矩陣之元素,即進行計數。
程式碼:
public: int numJewelsInStones(string J, string S) { int ans = 0; set<char> m(J.begin(), J.end()); for (int i = 0; i < S.size(); i++) { if (m.count(S[i])) ans++; } return ans; } };
1.宣告set,並將J矩陣元素放入其中 set<char> m(J.begin(), J.end());。
2.判斷S矩陣中是否包含J矩陣之元素 if (m.count(S[i]))。
文章標籤
全站熱搜
留言列表