TORONTO KIDS COMPUTER CLUB | Aurora Wednesday 18:30 Python Practice 22.07.13.
20840

# Aurora Wednesday 18:30 Python Practice 22.07.13.

## 18 Jul Aurora Wednesday 18:30 Python Practice 22.07.13.

Question:
A school team is trying to assign jerseys numbered 1,2,3,…,J to student athletes. The size of each jersey is either small (S), medium (M) or large (L).

Each athlete has requested a specific jersey number and a preferred size. The athletes will not be satisfied with a jersey that is the wrong number or that is smaller than their preferred size. They will be satisfied with a jersey that is their preferred size or larger as long as it is the right number. Two students cannot be given the same jersey.

Your task is to determine the maximum number of requests that can be satisfied.

Input Specification
The first line of input is the integer J which is the number of jerseys.

The second line of input is the integer A which is the number of athletes.

The next J lines are each the character S, M or L. Line j gives the size of jersey j (1≤j≤J).

The last A lines are each the character S, M or L followed by a space, followed by an integer. Line a (1≤a≤A) gives the requested size and jersey number for athlete a where the athletes are numbered 1,2,3,…,A.

For 50% of the test cases, 1≤J≤103 and 1≤A≤103.

For the remaining 50% of the test cases, 1≤J≤106 and 1≤A≤106.

Output Specification
The output will consist of a single integer which is the maximum number of requests that can be satisfied.

```Sample Input
4
3
M
S
S
L
L 3
S 3
L 1

Output for Sample Input
1

Explanation Sample Output
Jersey 1 cannot be assigned because it is medium and athlete 3 requested large.
No athlete requested jersey 2 or 4.
Jersey 3, can be assigned to athlete 2, but not athlete 1.```