Python 中的宝石和石头


假设我们有一个字符串 J,它表示一些被认为是宝石的字母,还有一个字符串 S,它表示我们拥有一些石头。我们的任务是找出 S 中有多少石头也是宝石。J 和 S 中的字母区分大小写。因此,如果 J = “aZc”,而 S = “catTableZebraPicnic”,则有 7 个宝石。

为了解决这个问题,我们将字符串转换为字符列表。如果 J 中的字符出现在 S 中,则增加计数。

示例

让我们看看以下实现以更好地理解 -

 在线演示

class Solution(object):
   def numJewelsInStones(self, J, S):
      jewels = {}
      for i in J:
         jewels[i] = 1
      number = 0
      for i in S:
         if i in jewels:
            number+=1
      return number
ob1 = Solution()
print(ob1.numJewelsInStones("aZc", "catTableZebraPicnic"))

输入

"aZc"
"catTableZebraPicnic"

输出

7

更新于: 2020-04-28

592 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告