原题:
You're given strings J
representing the types of stones that are jewels, and S
representing the stones you have. Each character in S
is a type of stone you have. You want to know how many of the stones you have are also jewels.
The letters in J
are guaranteed distinct, and all characters in J
and S
are letters. Letters are case sensitive, so "a"
is considered a different type of stone from "A"
.
Example 1:
Input: J = "aA", S = "aAAbbbb" Output: 3
Example 2:
Input: J = "z", S = "ZZ" Output: 0
Note:
S
andJ
will consist of letters and have length at most 50.- The characters in
J
are distinct.
思路:
用简单的嵌套循环即可实现。
c++代码实现:
1 class Solution { 2 public: 3 int numJewelsInStones(string J, string S) { 4 int num=0; 5 for(int i=0;i<J.size();i++) 6 { 7 for(int j=0;j<S.size();j++) 8 { 9 if(J[i]==S[j]) 10 num++; 11 } 12 } 13 return num; 14 } 15 };
python代码实现:
1 class Solution: 2 def numJewelsInStones(self, J, S): 3 """ 4 :type J: str 5 :type S: str 6 :rtype: int 7 """ 8 return sum(S.count(j) for j in J)