LWC 69: 771. Jewels and Stones
2018-01-29 11:09
411 查看
LWC 69: 771. Jewels and Stones
传送门:771. Jewels and StonesProblem:
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 and J will consist of letters and have length at most 50.
The characters in J are distinct.
思路:
记录J的信息,遍历S,采用Hashmap的思路,每次查询O(1),总时间复杂度为O(n)
Java版本:
public int numJewelsInStones(String J, String S) { int[] count = new int[64]; for (char c : J.toCharArray()) { count[c - 'A']++; } int ans = 0; for (char c : S.toCharArray()) { if (count[c - 'A'] >= 1) ans ++; } return ans; }
Python版本:
class Solution(object): def numJewelsInStones(self, J, S): """ :type J: str :type S: str :rtype: int """ info = set(J) ans = 0 for c in S: if c in info: ans += 1 return ans
再精简一波:
class Solution(object): def numJewelsInStones(self, J, S): """ :type J: str :type S: str :rtype: int """ info = set(J) return sum(c in info for c in S)
相关文章推荐
- 771. Jewels and Stones
- 771. Jewels and Stones
- 771. Jewels and Stones。
- 771. Jewels and Stones
- 771.Jewels and Stones (leetcode)
- LeetCode之771:Jewels and Stones
- 【leetcode】771. Jewels and Stones
- LeetCode 771. Jewels and Stones
- 771. Jewels and Stones
- python实现 leetcode 771 jewels and stones
- 771. Jewels and Stones
- 771. Jewels and Stones
- [Leetcode] 771. Jewels and Stones 解题报告
- 771- Jewels and Stones[C++]
- LeetCode 开坑纪念-水题771-Jewels and Stones
- codechef Jewels and Stones 题解
- LC-Jewels and Stones
- LeetCode之Jewels and Stones(Kotlin)
- codechef Jewels and Stones 题解
- leetcode771 Jewels and Stones