五骰游戏计分

实践练习C++17

简介

高中里每年都会流行新事物,今年流行的是骰子游戏 Yacht。

它与 Poker Dice、Generala 同类,也是 Yahtzee 的前身。游戏共十二轮,每轮掷五枚骰子,选择十二种类别之一,再按该类别计分。

任务说明

给定五枚骰子的点数与计分类别,计算得分。

注意:始终有五枚骰子,每枚点数为 1 至 6,顺序不一定已排序。

Yacht 计分规则

类别 得分 条件 示例
Ones 1×一的数量 任意组合 1 1 1 4 5:3 分
Twos 2×二的数量 任意组合 2 2 3 4 5:4 分
Threes 3×三的数量 任意组合 3 3 3 3 3:15 分
Fours 4×四的数量 任意组合 1 2 3 3 5:0 分
Fives 5×五的数量 任意组合 5 1 5 2 5:15 分
Sixes 6×六的数量 任意组合 2 3 4 5 6:6 分
Full House 全部点数之和 恰为三个相同加另外两个相同 3 3 3 5 5:19 分
Four of a Kind 四枚相同骰子的点数之和 至少四枚相同 4 4 4 4 6:16 分
Little Straight 30 分 1-2-3-4-5 1 2 3 4 5:30 分
Big Straight 30 分 2-3-4-5-6 2 3 4 5 6:30 分
Choice 全部点数之和 任意组合 2 3 3 4 6:18 分
Yacht 50 分 五枚全部相同 4 4 4 4 4:50 分

不满足类别条件时得 0 分。例如,四枚相同不能计为 Yacht;五枚全部相同也不满足 Full House。