ブラックジャックメニューのサムネイル
勝敗の判定 F#(Beta)編(paizaランク B 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

(はじめに)
ブラックジャックの勝敗判定を行います。
ここまで作成してきた「スコア計算」の仕組みを使って、プレイヤーと親のどちらが勝ったかを判定しましょう。

勝敗のルールは以下の通りです。

1. プレイヤーがバースト(22点以上)している場合
- 親の点数に関わらず、プレイヤーの負けです。
2. 親だけがバーストしている場合
- プレイヤーの勝ちです。
3. どちらもバーストしていない場合
- 点数が高い方が勝ちます。
- 点数が同じ場合は引き分けです。

※本来のブラックジャックには「ナチュラル21(A+10)は通常の21より強い」などの役の強弱がありますが、この問題では純粋な「スコアの数値」のみで勝敗を決定します。

(問題)
ジョーカーを除いた 52 枚のトランプの中から、プレイヤーに K 枚、親に L 枚のカードが配られました。
上記のルールに従って、プレイヤーの勝敗を出力してください。

入力される値

K
p_1 p_2 ... p_K
L
d_1 d_2 ... d_L


1 行目に、プレイヤーのカード枚数 K が与えられます。
2 行目に、プレイヤーのカード K 枚が与えられます。
3 行目に、親のカード枚数 L が与えられます。
4 行目に、親のカード L 枚が与えられます。


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

プレイヤーが勝った場合は WIN、負けた場合は LOSE、引き分けの場合は DRAW を 1 行で出力してください。

条件

すべてのテストケースにおいて、以下の条件をみたします。
・2 ≦ K, L ≦ 5
・与えられるすべてのカードは、ジョーカーを除く 52 枚のトランプに含まれる、互いに異なるカードである

入力例1

2
S10 HA
2
D9 C8

出力例1

WIN

入力例2

3
H10 CJ D5
2
S9 D8

出力例2

LOSE

入力例3

2
HA DA
2
S10 H2

出力例3

DRAW

問題一覧へ戻る

  1. paizaラーニングトップ
  2. レベルアップ問題集
  3. ブラックジャックメニュー(言語選択)
  4. 問題一覧 F#(Beta)編
  5. 勝敗の判定 F#(Beta)編
ページの先頭へ戻る