List<int>
(List<List<int>>
)的列表。该列表由比赛中开始编号的游戏赌注组成。假设我在第一场比赛中选择了三个选项,然后在其余6场比赛中选择了一个选项。这总计多达三个投注组合。三个唯一行(下注)的List<List<int>>
看起来像这样:
[0] 1 [0] 2 [0] 3
[1] 1 [1] 1 [1] 1
[2] 1 [2] 1 [2] 1
[3] 1 [3] 1 [3] 1
[4] 1 [4] 1 [4] 1
[5] 1 [5] 1 [5] 1
[6] 1 [6] 1 [6] 1
[我提交赌注时,我想将单个赌注分组为较小的分组赌注(可能是List<List<string>>
?),这些赌注在数学上代表上述列表,因此根据上述示例:
[0] "1,2,3" [1] "1" [2] "1" [3] "1" [4] "1" [5] "1" [6] "1"
我发现了与笛卡尔积相关的类似解决方案。但是似乎没有一个适合这个问题。有什么想法吗?我发现了这个Reverse Cartesian Product,它描述了我的问题,但是我无法真正将这个答案从Java转换为c#。
编辑:只是为了澄清评论中的问题,每个投注始终由7场比赛组成,因此,如果我在2-7场比赛中选择#1投注,然后在第一场比赛中对#1,#2,#3投注。我的函数使用.Count == 7创建List的三行。我只是试图说明列表的内容。在c#中,可以这样创建一个新列表:
List<List<int>> list = new List<List<int>> { new List<int> { 1, 1, 1, 1, 1, 1, 1 }, new List<int> { 2, 1, 1, 1, 1, 1, 1 }, new List<int> { 3, 1, 1, 1, 1, 1, 1 } };