我知道这是一个新手问题,但无论如何我感谢任何帮助......
假设我有一个骰子
public class Dice
{
public int FaceValue { get; set; }
public Dice(int faceValue)
{
this.FaceValue = faceValue;
}
}
还有一个 Result 类...
public class Result
{
public Dice D1 { get; set; }
public Dice D2 { get; set; }
public Dice D3 { get; set; }
// Always has three dices ...
public Result(Dice d1,Dice d2,Dice d3)
{
D1 = d1;
D2 = d2;
D3 = d3;
}
}
还有一个班级赌...
public class Bet
{
// A bet could have one , two , or three dices ....
public List<Dice> Dices = new List<Dice>();
}
是否有任何非常简单的方法(LINQ 与否)来计算一次投注的次数(可以有一个、两个或三个 Dice)
出现在总是有三个骰子的单个结果中?
如果我的投注列表有多个投注,请检查是否有任何投注出现在三个骰子的结果中?
例如
Result.D1 = new Dice(1);
Result.D2 = new Dice(4);
Result.D3 = new Dice(1);
{ { new Dice(1), new Dice(4) } } appears 1 time ===> 1
{ { new Dice(1) } } appears 2 times ====> 2
{ { new Dice(4) , new Dice(1) , new Dice(1) } } appears 1 time ====> 1
{ { new Dice(5) , new Dice(2) , new Dice(3) } } doesn't appear ====> 0
{ { new Dice(1) , new Dice(6) , new Dice(6) },
{ new Dice(4) , new Dice(4) , new Dice(4) },
{ new Dice(1) , new Dice(2) , new Dice(3) },
{ new Dice(1) , new Dice(5) , new Dice(5) },
{ new Dice(1) , new Dice(1) , new Dice(4) },
{ new Dice(3) , new Dice(3) , new Dice(3) } } has one bet that is equal so ========> 1