학습
시험

카드 모양의 조합

난이도
STARTER

문제 설명

"모양_숫자" 형식의 카드 목록 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)

각 모양에서 한 장씩 뽑는 경우의 수는 2×4×3×3=722 \times 4 \times 3 \times 3 = 72입니다.


제한 사항

  • 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)

각 모양에서 한 장씩 뽑는 경우의 수: 2×4×3×3=722 \times 4 \times 3 \times 3 = 72 따라서 72를 반환합니다.

2번 테스트케이스 설명

각 모양별 카드 개수:

  • Heart: 1장 (Heart_1)
  • Spade: 1장 (Spade_1)
  • Clover: 1장 (Clover_1)
  • Diamond: 1장 (Diamond_1)

각 모양에서 한 장씩 뽑는 경우의 수: 1×1×1×1=11 \times 1 \times 1 \times 1 = 1 따라서 1을 반환합니다.

3번 테스트케이스 설명

각 모양별 카드 개수:

  • Heart: 2장 (Heart_1, Heart_2)
  • Spade: 2장 (Spade_1, Spade_2)
  • Clover: 1장 (Clover_1)
  • Diamond: 1장 (Diamond_1)

각 모양에서 한 장씩 뽑는 경우의 수: 2×2×1×1=42 \times 2 \times 1 \times 1 = 4 따라서 4를 반환합니다.