问题:
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".
方法:
将J中元素存到set中,遍历S同时统计S中包含的J中元素的数量,最后输出统计的结果。
具体实现:
class JewelsAndStones {
fun numJewelsInStones(J: String, S: String): Int {
val map = mutableSetOf<Char>()
var count = 0
for (ch in J) {
map.add(ch)
}
for (ch in S) {
if (map.contains(ch)) {
count++
}
}
return count
}
}
fun main(args: Array<String>) {
val J = "aA"
val S = "aAAbbbb"
val jewelsAndStones = JewelsAndStones()
val result = jewelsAndStones.numJewelsInStones(J, S)
println("result: $result")
}
有问题随时沟通
网友评论