zoukankan      html  css  js  c++  java
  • 383. Ransom Note (Easy)

    Given an arbitrary ransom note string and another string containing letters from all the magazines, write a function that will return true if the ransom note can be constructed from the magazines ; otherwise, it will return false.

    Each letter in the magazine string can only be used once in your ransom note.

    Note:
    You may assume that both strings contain only lowercase letters.

    canConstruct("a", "b") -> false
    canConstruct("aa", "ab") -> false
    canConstruct("aa", "aab") -> true

    题意:判断magazine中的字符是否可以组成ransom note所需要的那些字符;
    思路:
    1.利用Python的collections.Counter()统计字符个数,然后做差即可;
    2.当ransomCnt大于magazineCnt时,返回false;
    class Solution():
        def canConstruct(self, ransomNote, magazine):
            """
            :type ransomNote: str
            :type magazine: str
            :rtype: bool
            """
            ransomCnt = collections.Counter(ransomNote)
            magazineCnt = collections.Counter(magazine)
            return not ransomCnt - magazineCnt
  • 相关阅读:
    Wedding(2-SAT)
    JSOI2010 满汉全席
    2-SAT问题
    Tarjan求桥
    遥远的国度
    NOIP2014 联合权值
    部落冲突
    仓鼠找sugar
    2018.09.09 DL24 Day2总结
    php一些易犯的错误
  • 原文地址:https://www.cnblogs.com/yancea/p/7508941.html
Copyright © 2011-2022 走看看