版权声明:本文为博主原创文章,转载请标明原文地址,谢谢 ^_^ https://blog.csdn.net/xiaoquantouer/article/details/79261524
一、题目描述
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.
题目解读:
输入两个字符串J和S,J字符串中包含的字母表示是宝石,判断S中有多少个宝石
go语言解法:
func numJewelsInStones(J string, S string) int {
n1 := len(J)
flag := make(map[byte]int)
for i:=0; i<n1;i++{
flag[J[i]] = 1
}
count := 0
n2 := len(S)
for i:=0; i<n2;i++{
if flag[S[i]] == 1{
count++
}
}
return count
}