从Forming a tournament table with LINQ (Fixture List)上的上一篇文章开始
添加数字列表时,例如
var fixture = ListMatches(new List<string> { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16" });当我运行代码时,数字1总是第二个。例如:
Round 1
9 v 1
Round 2
10 v 1
Round 3
11 v 1我正在努力弄清楚我如何能够修改代码,以便每个“轮”的数字将从“家”和“离开”交替。因此,如果1是第2名,那么下一轮就是第1名。如果16在第一轮是第一,那么在第二轮就是第二,客场。
Round 1
9 v 1
Round 2
1 v 10
Round 3
11 v 1发布于 2012-12-25 03:40:15
这可能是一个愚蠢的建议,但你可以改变偶数轮游戏的顺序。
List<List<Tuple<string, string>>> fixture =
ListMatches(new List<string> { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16" });
bool switchOrder = false;
foreach (round in fixture)
{
if (switchOrder)
{
foreach (var tuple in round)
{
string temp = tuple.Item1;
tuple.Item1 = tuple.Item2;
tuple.Item2 = temp;
}
}
switchOrder = !switchOrder
}https://stackoverflow.com/questions/14025065
复制相似问题