到目前为止我有这个代码
public class Card
{
public int suitID;
public int cardValue;
}
public class DeckManager
{
private List<List<Card>> FindCardsPerSuit(List<Card> cards)
{
var _cardsCombination = cards
.GroupBy(x => x.cardValue)
.Where(g => g.Count() > 2)
.Select(c => c.ToList())
.ToList();
return _cardsCombination;
}
}
我正在开发一款拉米纸牌游戏,我想做的是找出玩家想要玩的纸牌组合是否有效。
当玩家从手中选择一些牌时,我需要检查具有相同价值的牌是否具有独特的花色,否则,将其添加到新列表中。
示例:玩家有 8 张牌,所有牌面值相同,但花色不同,最小组合为 4,因此您可以进行 2 种组合,并且因为您使用 2 副牌,所以每个花色有 2 张牌。
如何确定是否要创建组合列表列表?
目前 _cardsCombination 查询获取所有选择的卡片,并使用所有具有相同值的卡片组成一个较小的组。我怎样才能做同样的事情并为每张带有重复套装的卡片创建子组?
谢谢你。