依据输入的球队数量,写一个球队比赛的算法!大神看过来
根据输入的球队数量,写一个球队比赛的算法!大神看过来!
最近接了个活,需求是根据输入的球队数量来列出比赛对阵情况。要求后台写出代码传到前台!
例如输入了8
第一轮 1-8 2-7 3-6 4-5
第二轮 1-7 2-6 3-5 4-8
第三轮 1-6 2-5 3-4 5-8
第四轮 1-5 2-4 3-8 6-7
第五轮 1-4 2-3 5-6 7-8
第六轮 1-3 2-8 4-6 5-7
第七轮 1-2 3-7 4-
------解决思路----------------------
感觉这个不对,输出的看起来像,但跟你们的不一样
最近接了个活,需求是根据输入的球队数量来列出比赛对阵情况。要求后台写出代码传到前台!
例如输入了8
第一轮 1-8 2-7 3-6 4-5
第二轮 1-7 2-6 3-5 4-8
第三轮 1-6 2-5 3-4 5-8
第四轮 1-5 2-4 3-8 6-7
第五轮 1-4 2-3 5-6 7-8
第六轮 1-3 2-8 4-6 5-7
第七轮 1-2 3-7 4-
------解决思路----------------------
static void BeiGeer()
{
int n, m;
n = 16;
if (n % 2 == 0) { m = n; }
else { m = n + 1; }
int a = 1, b = 1, index = 1, loop = 0;
for (int i = 1; i <= (m - 1) * (m / 2); i++)
{
if (a >= m) a = 1;
if (index > m / 2) index = 1;
if (index == 1)
{
loop++;
if (i == 1)
{
b = m;
}
else
{
b = a;
}
Console.WriteLine();
Console.WriteLine("第" + loop + "轮");
if (((i - 1) / (m / 2) % 2) == 0)
{
Console.Write(a + "----" + m + " ");
}
else
{
Console.Write(m + "---" + a + " ");
}
}
else if (index > 1 && index <= m / 2)
{
if (b > 1) b--;
else b = m - 1;
Console.Write(a + "---" + b + " ");
}
index++;
a++;
}
}
感觉这个不对,输出的看起来像,但跟你们的不一样