У меня есть список List<int>
(List<List<int>>
). Список состоит из игровых ставок стартовых номеров в гонках. Допустим, я выбрал три варианта в первой гонке, затем один вариант в оставшихся 6 гонках. Это добавляет до трех комбинаций ставок.
A 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"
Я нашел похожие решения, связанные с темой Декартово произведение,Но никто не кажется подходящим для этой проблемы. Любые идеи?
Я нашел этот Обратный декартовой продукт , который описывает мою проблему, но я не могу действительно перевести этот ответ в c # из Java.
РЕДАКТИРОВАТЬ: Просто чтобы уточнитьна вопросы в комментариях каждая ставка всегда состоит из 7 гонок, поэтому, если я выбрал ставку № 1 в гонке 2-7, а затем поставил на № 1, № 2, № 3 в первой гонке. Моя функция создает три строки List с .Count == 7. Я просто пытался проиллюстрировать содержимое списка. В 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 } };