protected override int GetHandledCaseNumber(SuperSlimBoard b, BreakerChoiceInfo bc) { var childBoard = new SuperSlimBoard(b._trace, bc.Alpha, bc.Beta, bc.Response, b._stackCount); if (Cases[0].Boards.Contains(childBoard)) { return(1); } return(Cases.Skip(1).IndicesWhere(cc => cc.Boards.SelectMany(bb => new[] { bb }.Union(_permutationLinked[bb].Select(tup => tup.Item2))).Contains(childBoard)).First() + 2); }
protected virtual int GetHandledCaseNumber(SuperSlimBoard b, BreakerChoiceInfo bc) { var childBoard = new SuperSlimBoard(b._trace, bc.Alpha, bc.Beta, bc.Response, b._stackCount); return(Cases.IndicesWhere(cc => cc.Boards.Contains(childBoard)).First() + 1); }
string GetChildBoardName(SuperSlimBoard b, BreakerChoiceInfo bc) { var childBoard = new SuperSlimBoard(b._trace, bc.Alpha, bc.Beta, bc.Response, b._stackCount); return(ToListString(childBoard)); }