문제 설명
"모양_숫자" 형식의 카드 목록 cards가 주어질 때, 네 가지 모양(Heart, Spade, Clover, Diamond)에서 각각 한 장씩 뽑아 네 장을 만드는 모든 경우의 수를 반환하는 solution 함수를 작성하시오.
예를 들어, ["Heart_4", "Clover_3", "Diamond_1", "Heart_10", "Clover_2", "Spade_4", "Spade_6", "Diamond_7", "Clover_1", "Clover_11", "Diamond_3", "Spade_1"]이 주어진다면:
- Heart: 2장 (Heart_4, Heart_10)
- Clover: 4장 (Clover_3, Clover_2, Clover_1, Clover_11)
- Diamond: 3장 (Diamond_1, Diamond_7, Diamond_3)
- Spade: 3장 (Spade_4, Spade_6, Spade_1)
각 모양에서 한 장씩 뽑는 경우의 수는 입니다.
제한 사항
cards의 길이는 4 이상 10,000 이하입니다.- 각 카드는 "모양_숫자" 형식으로 주어집니다.
- 모양은 "Heart", "Spade", "Clover", "Diamond" 중 하나입니다.
- 숫자는 1 이상 13 이하의 자연수입니다.
- 각 모양의 카드는 최소 한 장 이상 주어집니다.
- 같은 카드가 중복으로 주어지지 않습니다.
예시 테스트케이스 설명
| 테스트케이스 번호 | cards | return |
|---|---|---|
| 1 | ["Heart_4", "Clover_3", "Diamond_1", "Heart_10", "Clover_2", "Spade_4", "Spade_6", "Diamond_7", "Clover_1", "Clover_11", "Diamond_3", "Spade_1"] | 72 |
| 2 | ["Heart_1", "Spade_1", "Clover_1", "Diamond_1"] | 1 |
| 3 | ["Heart_1", "Heart_2", "Spade_1", "Spade_2", "Clover_1", "Diamond_1"] | 4 |
1번 테스트케이스 설명
각 모양별 카드 개수:
- Heart: 2장 (Heart_4, Heart_10)
- Clover: 4장 (Clover_3, Clover_2, Clover_1, Clover_11)
- Diamond: 3장 (Diamond_1, Diamond_7, Diamond_3)
- Spade: 3장 (Spade_4, Spade_6, Spade_1)
각 모양에서 한 장씩 뽑는 경우의 수: 따라서 72를 반환합니다.
2번 테스트케이스 설명
각 모양별 카드 개수:
- Heart: 1장 (Heart_1)
- Spade: 1장 (Spade_1)
- Clover: 1장 (Clover_1)
- Diamond: 1장 (Diamond_1)
각 모양에서 한 장씩 뽑는 경우의 수: 따라서 1을 반환합니다.
3번 테스트케이스 설명
각 모양별 카드 개수:
- Heart: 2장 (Heart_1, Heart_2)
- Spade: 2장 (Spade_1, Spade_2)
- Clover: 1장 (Clover_1)
- Diamond: 1장 (Diamond_1)
각 모양에서 한 장씩 뽑는 경우의 수: 따라서 4를 반환합니다.