---
tags: data_structure_python
---
# Ransom Note <img src="https://img.shields.io/badge/-easy-brightgreen">
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.
**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
```
**Constraints:**
- You may assume that both strings contain only lowercase letters.
# Solution
```python=
class Solution:
def canConstruct(self, ransomNote: str, magazine: str) -> bool:
for letter in set(ransomNote):
if ransomNote.count(letter) > magazine.count(letter):
return False
return True
```