前書き
サイコロ10,000は、6つのサイコロと何か書くことでプレイできるサイコロゲームです。プレイヤーはサイコロを1ターンに複数回転がし、最後にスコアを獲得します。最初に10,000ポイントに達したプレーヤーがゲームに勝ちます。1つのロールのスコアを計算することは、この課題におけるあなたの仕事です。完全なルールについては
こちらをご覧ください。
ゲームは広く知られているため、ルール(特にスコアリング)は地域によって異なることに注意してください。以下で説明するルールを使用します。
チャレンジ
サイコロを表す1から6までの6つの数字のリストが与えられたら、それらのスコアを出力します。スコアは次の方法で計算されます。
- 100ポイントを数える
- Fivesは50ポイントを数えます
- トリプレットはその数に100ポイントを掛けます。たとえば、3つの2は200ポイントを与えます。例外は、1000ポイントをカウントする3つの例外です。
- 同じ数の6つは、上記の2つのトリプレットのようにカウントされます。したがって、6 3は600ポイントを与えます。同じことはエッジケースにも当てはまります:6つは2,000ポイントです。
- 1つのダイを複数回使用することはできません。ダイスがトリプレットの一部である場合、他のスコアリングにはカウントされません。トリプレットのファイブは、500ポイントに加えて50ポイントをカウントしません。
- スコアを最大化するために、トリプルが常に最初にカウントされます。したがって、スリーファイブは150ポイントとしてカウントされません。4つのファイブは1つのトリプレットと1つの通常のファイブとしてカウントされ、550ポイントを獲得します。
ノート
- 入力には常に1〜6の6つの数字が含まれます。無効な入力は受け取りません。
- 番号は任意の順序にすることができます。特定の順序を想定することはできません。
ルール
- 入力形式は、前処理されていない限り自由です。
- 機能または完全なプログラムが許可されます。
- 入出力のデフォルト規則。
- 標準の抜け穴が適用されます。
- これはcode-golfなので、バイト数が最も少なくなります。Tiebreakerは以前の提出です。
テストケース
[1、2、3、4、5、6]-> 150 [1、1、1、2、3、5]-> 1050 [1、1、1、1、1、1]-> 2000 [2、2、2、2、2、2]-> 400 [6、6、1、5、5、6]-> 800 [2、3、4、6、2、4]-> 0 [1、5、1、5、1、5]-> 1500 [5、5、5、5、2、3]-> 550 [1、1、1、1、1、5]-> 1250 [3、3、4、4、3、4]-> 700