CCC '99 S1 - Card Game

View as PDF

Submit solution

Points: 5
Time limit: 2.0s
Memory limit: 16M

Problem type
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, CommonLisp, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, Nim, ObjC, OCaml, Octave, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig

Write a program that will keep score for a simple two-player game, played with a deck of cards. There are 52 cards in the deck; four of each of 13 possible names: two, three, four, five, six, seven, eight, nine, ten, jack, queen, king, ace. The cards labelled jack, queen, king, and ace are collectively known as high cards.

The deck is shuffled and placed face-down on the table. Player A turns over the top card and places it on a pile; then player B turns over the top card and places it on the pile. A and B alternate until the deck is exhausted. The game is scored as follows:

  • If a player turns over an ace, with at least 4 cards remaining to be turned over, and none of the next 4 cards is a high card, that player scores 4 points
  • If a player turns over a king, with at least 3 cards remaining to be turned over, and none of the next 3 cards is a high card, that player scores 3 points
  • If a player turns over a queen, with at least 2 cards remaining to be turned over, and none of the next 2 cards is a high card, that player scores 2 points
  • If a player turns over a jack, with at least 1 card remaining to be turned over, and the next card is not a high card, that player scores 1 point

Input Specification

The input will contain 52 lines. Each line will contain the name of a card in the deck, in lowercase letters. The first line denotes the first card to be turned over; the next line the next card; and so on.

Output Specification

Whenever a player scores, print Player X scores n point(s). where X is the name of the player (A or B) and n is the number of points scored (1, 2, 3, or 4). At the end of the game, print the total score for each player, on two lines:

Player A: n point(s).
Player B: m point(s).

Sample Input

three
seven
queen
eight
five
ten
king
eight
jack
queen
six
queen
jack
eight
seven
three
ten
four
king
nine
six
seven
ace
four
jack
ace
ten
nine
ten
queen
ace
king
seven
two
five
two
five
nine
three
king
six
eight
jack
six
five
four
two
ace
four
three
two
nine

Sample Output

Player A scores 2 point(s).
Player A scores 1 point(s).
Player A scores 3 point(s).
Player B scores 3 point(s).
Player A scores 1 point(s).
Player B scores 4 point(s).
Player A: 7 point(s).
Player B: 7 point(s).

Comments


  • 0
    GD_FrostByte  commented on Dec. 16, 2018, 9:44 a.m. edit 5

    why does mine say "Player A s"

    edit:now it just says "Player A"

    edit 2:nevermind i wasnt using .equals