Statistics

Problem Statement for "TheBlackJackDivTwo"

Problem Statement

John and Brus are training for a card game tournament. There they will be playing Black Jack. Black Jack is played using a standard deck containing 52 distinct cards. Each card can be represented as a two-character string where the first character is the rank ('2' - '9' for ranks Two through Nine, 'T' for Ten, 'J' for Jack, 'Q' for Queen, 'K' for King and 'A' for Ace) and the second character is the suit ('S' for Spades, 'C' for Clubs, 'D' for Diamonds and 'H' for Hearts). For example, the Jack of Spades can be represented as "JS" and the Nine of Hearts as "9H".

Each time a player receives a card from the deck, his score increases by the card's value. Ranks Two through Ten have values of 2 - 10, respectively. Jacks, Queens and Kings each have a value of 10, and Aces have a value of 11.

Brus randomly shuffles the full card deck and gives John several cards from the top of the deck. You are given a String[] cards, where each element represents a single card given to John. Return John's score after this initial deal.

Definition

Class:
TheBlackJackDivTwo
Method:
score
Parameters:
String[]
Returns:
int
Method signature:
int score(String[] cards)
(be sure your method is public)

Constraints

  • cards will contain between 1 and 50 elements, inclusive.
  • Each element of cards will contain exactly two characters, where the first character is '2'-'9', 'T', 'J', 'Q', 'K' or 'A', and the second character is 'S', 'C', 'D' or 'H'.
  • All elements of cards will be distinct.

Examples

  1. {"4S", "7D"}

    Returns: 11

    The Four of Spades has a value of 4 and the Seven of Diamonds has a value of 7. The total score is 4 + 7 = 11.

  2. {"KS", "TS", "QC"}

    Returns: 30

    Each of the three cards has a value of 10.

  3. {"AS", "AD", "AH", "AC"}

    Returns: 44

    Each of the Aces has a value of 11.

  4. {"3S", "KC", "AS", "7C", "TC", "9C", "4H", "4S", "2S"}

    Returns: 60

  5. {"8S"}

    Returns: 8

  6. {"2S", "TS", "QS", "TD", "7S"}

    Returns: 39

  7. {"2D", "4S", "2S", "2H", "TC"}

    Returns: 20

  8. {"7D", "JD", "4C", "8C", "4H", "3D", "5D", "4D", "TS", "3C", "6D", "6S", "9S", "5S", "QH", "2H", "QD", "7H", "KH", "TC", "JH", "3S", "KS", "TH", "2C", "2S", "AS", "TD", "8S", "AH", "QS", "8H", "AD", "JS", "7C", "AC", "KD", "7S", "2D", "9D", "4S", "KC", "3H", "6H", "8D", "9C", "9H", "JC"}

    Returns: 354

  9. {"AS", "6D", "7D", "TS", "9D", "TH", "5S", "KH", "8S", "JD", "6S", "9C", "KS", "KD", "2S", "3S", "AD", "9S", "5D", "3C", "3D", "QC", "4D", "JS", "QD"}

    Returns: 191

  10. {"7S", "8H", "KD", "5S", "KS", "6C", "AS", "2D", "6S", "3C", "KC", "9D", "4C"}

    Returns: 91

  11. {"3H", "KD", "JH", "2S", "QS", "TC", "JS", "2H", "4D", "3C", "7H", "8S", "7C", "AS", "9C", "6S", "8D", "7D", "QC", "4S", "JD", "5S", "6H", "8H", "5H", "AD", "6D", "2C", "3S", "9D", "5D", "8C", "TH", "KS", "7S", "TS"}

    Returns: 256

  12. {"5S", "9H", "6S", "5C", "3S"}

    Returns: 28

  13. {"5H", "8D", "2H", "JH", "KH", "8S", "6S", "QD", "KS"}

    Returns: 69

  14. {"7S", "AD", "2S", "QC", "9S", "KD", "5D", "3H", "3D", "2C", "TC", "KH", "TS", "9D", "KS"}

    Returns: 111

  15. {"5S", "AS", "7S", "TS", "8D", "7D", "5C", "JS", "3S", "6C", "QC", "2D", "9D", "8H", "2S", "9C", "4S", "8S", "KH", "6H", "6D", "3D", "6S"}

    Returns: 155

  16. {"7S", "9S", "TD", "6S", "8D"}

    Returns: 40

  17. {"5S", "5H", "4S", "7D", "2D", "8S", "JS", "QS", "8C", "2H", "TD", "JC", "6S", "JH", "6H", "3D", "2C", "AH", "KC", "5D", "6D"}

    Returns: 140

  18. {"8D", "2D", "7C"}

    Returns: 17

  19. {"2D", "AH", "9H", "QS", "8S", "7D", "JS", "5S", "8D", "9S", "2C"}

    Returns: 81

  20. {"7D", "5C", "8S", "AC", "4D", "5D", "5S", "AD", "4S", "AH", "3D", "2C", "8C", "2S", "JC", "QD", "KH", "KS", "3H", "8D", "3C", "QH", "2D", "JD", "QS", "9H", "2H"}

    Returns: 183

  21. {"JH", "QD", "AC", "3C", "KH", "AS", "KC", "4S", "QH", "8S", "AH", "6D", "2D", "7H", "9H", "4D", "TS", "KS", "3H", "5S", "QS", "6H", "2C", "6S", "JS", "JC", "2S", "3S", "9D", "AD", "4C", "QC", "TC", "KD", "3D", "8C", "TH", "7S", "7C", "4H", "9S", "6C", "7D", "JD", "8H", "2H", "8D", "TD", "5D", "9C"}

    Returns: 370

  22. {"KD", "9D", "TC", "2D", "QD", "7D", "AD", "3C", "JC", "JS", "5C", "3H", "9C", "AS", "TH", "AH", "5S", "4D", "2C", "QC", "8D", "6S", "2H", "JH", "QS", "3D", "4C", "QH", "7C", "4H", "6D", "9S", "5D", "KC", "6H", "TS", "2S", "KS", "8S", "5H", "AC", "6C", "8H", "JD", "4S", "8C", "7S", "9H", "TD", "3S"}

    Returns: 363

  23. {"3D", "5C", "2C", "5S", "AD", "8D", "TS", "TD", "KD", "6H", "3C", "7C", "KS", "2S", "AS", "2H", "3H", "8S", "8H", "KH", "4D", "QS", "JS", "8C", "9S", "9H", "KC", "5D", "6C", "5H", "9C", "4H", "7D", "AH", "6S", "JC", "4S", "JD", "7S", "QH", "2D", "QD", "9D", "4C", "TH", "3S", "6D", "AC", "QC", "TC"}

    Returns: 363

  24. {"QH", "4H", "3H", "5H", "TH", "KC", "9S", "TD", "5C", "3S", "8D", "9H", "3C", "AS", "7H", "2C", "TC", "6H", "7S", "7D", "JS", "AH", "QC", "JH", "6S", "QD", "6D", "4S", "QS", "5D", "KD", "2D", "4D", "7C", "KH", "KS", "5S", "2S", "6C", "3D", "AD", "2H", "4C", "TS", "9C", "JD", "8H", "8S", "9D", "AC"}

    Returns: 362

  25. {"4D", "KC", "AD", "3H", "6H", "5C", "2H", "7H", "4C", "9H", "QH", "JC", "TD", "7D", "TH", "8D", "6D", "2S", "QD", "2C", "4H", "QS", "AC", "5H", "3S", "2D", "KS", "3D", "5S", "5D", "JS", "8C", "AH", "AS", "8S", "7C", "9D", "3C", "JH", "6S", "8H", "6C", "KD", "QC", "TS", "9S", "7S", "TC", "JD", "4S"}

    Returns: 361

  26. {"4H", "9S", "9C", "5H", "5D", "3C", "4S", "AS", "TC", "JS", "JC", "KS", "7S", "3D", "8D", "AH", "2C", "AC", "QD", "6C", "4D", "5C", "8S", "8C", "2H", "JD", "KD", "6S", "QS", "3S", "9H", "7D", "6H", "QC", "TS", "TH", "TD", "JH", "KH", "3H", "4C", "2D", "AD", "QH", "7C", "KC", "2S", "5S", "7H", "8H"}

    Returns: 365

  27. {"AS", "KD", "6S", "8D", "JD", "JC", "3S", "3C", "4S", "7D", "JS", "7C", "4H", "9D", "2D", "QH", "5S", "5D", "8S", "KH", "TC", "7H", "KS", "6C", "3H", "AD", "2H", "4C", "QS", "QC", "QD", "4D", "9S", "JH", "6D", "3D", "9C", "5H", "9H", "2S", "TH", "AH", "TD", "TS", "7S", "KC", "8C", "2C", "8H", "5C"}

    Returns: 363

  28. {"8C", "9S", "7C", "5H", "9D", "JS", "8S", "AS", "5D", "7D", "6S", "7S", "2H", "5C", "KS", "4D", "6H", "QC", "TD", "JC", "3D", "4H", "8H", "AD", "2D", "QS", "KH", "JH", "JD", "4C", "2S", "3S", "7H", "KD", "4S", "KC", "2C", "6C", "QH", "QD", "5S", "9C", "8D", "AC", "TC", "TS", "6D", "TH", "3C", "9H"}

    Returns: 366

  29. {"JH", "3H", "4S", "6C", "2H", "TS", "7S", "2D", "AD", "KC", "TH", "AC", "TD", "AH", "KH", "4C", "8D", "QC", "5H", "QD", "2S", "9S", "3S", "7D", "5S", "JD", "QS", "QH", "5C", "4D", "8C", "JC", "KS", "6S", "6H", "TC", "8S", "KD", "6D", "9D", "9H", "7C", "5D", "3D", "AS", "2C", "3C", "4H", "8H", "JS"}

    Returns: 364

  30. {"2H", "QD", "QS", "6D", "5C", "2D", "5D", "7S", "6H", "9D", "KD", "TS", "5S", "TC", "QH", "AH", "4H", "6S", "8H", "JH", "JS", "4C", "9S", "AC", "JD", "9H", "7C", "TD", "JC", "9C", "3C", "AS", "KH", "2C", "8S", "7D", "AD", "KS", "5H", "3S", "2S", "6C", "4D", "8C", "4S", "KC", "TH", "3D", "8D", "3H"}

    Returns: 363

  31. {"8C", "8D", "JC", "KS", "8S", "TS", "2D", "6S", "3S", "7C", "4H", "TC", "9S", "3C", "4C", "TH", "8H", "QH", "9D", "5C", "JD", "KC", "3D", "6C", "AC", "AS", "6D", "9H", "6H", "4D", "JS", "AH", "AD", "9C", "QC", "3H", "TD", "7S", "QS", "4S", "KH", "5H", "5D", "5S", "QD", "7D", "KD", "JH", "2H", "7H"}

    Returns: 376

  32. {"8C", "4D", "JC", "KS", "8S", "9S", "AC", "5S", "3S", "AD", "4H", "TC", "JD", "3C", "4C", "QS", "8H", "QH", "9D", "5C", "2D", "KC", "3D", "6C", "7C", "AS", "TS", "9H", "6H", "2S", "JS", "AH", "TH", "9C", "QC", "3H", "TD", "7S", "6S", "4S", "KH", "5H", "5D", "8D", "QD", "7D", "KD", "JH", "6D", "7H"}

    Returns: 376

  33. {"8C", "4D", "KD", "TD", "8S", "TS", "2D", "5S", "3S", "7C", "4H", "TC", "9S", "3C", "4C", "QS", "8H", "QH", "9D", "5C", "JD", "KC", "3D", "6C", "AC", "KS", "6D", "9H", "6H", "2S", "JS", "AH", "TH", "9C", "QC", "3H", "JC", "7S", "6S", "4S", "KH", "5H", "5D", "8D", "QD", "7D", "2C", "JH", "2H", "7H"}

    Returns: 358

  34. {"7S"}

    Returns: 7

  35. {"2C"}

    Returns: 2

  36. {"6D"}

    Returns: 6

  37. {"3D"}

    Returns: 3

  38. {"JD"}

    Returns: 10

  39. {"TS"}

    Returns: 10

  40. {"7C"}

    Returns: 7

  41. {"JS", "8S", "AC", "7C", "9C", "TH", "KH", "4D", "5S", "6S", "QD", "TS", "4S", "8D", "2S", "6D", "3S", "7S", "9D", "2H", "AD", "2D", "QS", "JD", "9S", "KC"}

    Returns: 193

  42. {"AS", "3C", "5C", "5S", "TS", "KS", "7S", "7D", "9S", "KC", "TC", "QS", "QD", "3D", "5D", "4C", "4D", "2S", "8S", "3S", "3H", "TD", "JS", "2D", "9C", "6H", "2H"}

    Returns: 178

  43. {"9C", "4D", "QH", "8S", "TS", "2S", "6S", "KD", "3D", "6C", "TH", "QC", "JH", "TD", "AS", "3S", "KH", "AH", "QS", "5D", "9S", "AD", "3C", "8C", "7S", "5S", "4S"}

    Returns: 205

  44. {"3D", "5D", "3S", "JH", "6S", "JS", "2S", "JC", "6D", "3C", "TC", "8C", "7C", "JD", "AS", "4D", "2D", "7S", "TD", "TS", "5S", "QS", "2H", "QH", "8S", "7H", "KS", "9S"}

    Returns: 198

  45. {"2D", "2H", "2S", "2C"}

    Returns: 8

  46. {"3D", "2D", "3C", "4S", "4D", "3S", "3H", "2S", "4H", "4C", "2C", "2H"}

    Returns: 36

  47. {"8S", "KS", "JC", "TS", "QC", "TC", "TD", "QD", "7H", "2H", "8D", "6H", "TH", "KD", "6D", "3C", "KH", "5S", "2S", "9D", "2D", "9H", "QH", "4H", "5H", "2C", "8C", "9C", "3D", "5C", "JH", "6C", "JD", "JS", "KC", "3H", "3S", "4D", "7D", "7S", "8H", "4C", "7C", "4S", "9S", "QS", "5D", "6S"}

    Returns: 336

  48. {"3S", "KC", "AS", "7C", "TC", "9C", "4H", "4S", "2S" }

    Returns: 60

  49. {"4S", "7D" }

    Returns: 11

  50. {"AS" }

    Returns: 11

  51. {"JS", "AS" }

    Returns: 21

  52. {"4S", "TD" }

    Returns: 14

  53. {"4S", "JD" }

    Returns: 14

  54. {"TS" }

    Returns: 10

  55. {"JS" }

    Returns: 10


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: