ZhongKuo0228 / study

0 stars 0 forks source link

383. Ransom Note #17

Open fockspaces opened 1 year ago

fockspaces commented 1 year ago

Given two strings ransomNote and magazine, return true if ransomNote can be constructed by using the letters from magazine and false otherwise.

Each letter in magazine can only be used once in ransomNote.

Example 1:

Input: ransomNote = "a", magazine = "b" Output: false Example 2:

Input: ransomNote = "aa", magazine = "ab" Output: false Example 3:

Input: ransomNote = "aa", magazine = "aab" Output: true

fockspaces commented 1 year ago

hash map做紀錄,看看是否能在quota內組完即可

class Solution {
public:
    bool canConstruct(string ransomNote, string magazine) {
        vector<int> map(26);
        for(char c : magazine) map[c - 'a']++;
        for(char c : ransomNote) {
            if(--map[c - 'a'] < 0) return false;
        }
        return true;
    }
};