365bet手机官网 热点资讯,篇篇都是10万+!

单循环赛制[多图]

08-01栏目:技术
TAG:单循环赛制

 

单循环赛

#!/usr/bin/Python3 copyright jhua.org

# 文件名: 单循环赛制 copyright www.jhua.org

# 作者:巧若拙 copyright jhua.org

# 时间:2019-01-23 copyright www.jhua.org

''' copyright jhua.org

单循环赛制是一种较为公平合理的比赛制度,比赛过程中所有参赛队伍均能相遇--次。

jhua.org

其秩序编排可采用“逆时针轮转方法”: www.jhua.org

数字1~ n依次作为队伍编号,把编号按U型走向分成均等两边 www.jhua.org

(若n为奇数,则在末尾增加编号0,使总数为偶数),即可得到第一轮的比赛秩序,

copyright jhua.org

例如,有7个队参加比赛,比赛秩序编排如下所示: jhua.org

第一轮 第二轮 第三轮 第四轮 第五轮 第六轮 第七轮

copyright jhua.org

1-0    1-7    1-6    1-5    1-4    1-3    1-2 jhua.org

2-7    0-6    7-5    6-4    5-3    4-2    3-0

www.jhua.org

3-6    2-5    0-4    7-3    6-2    5-0    4-7 www.jhua.org

4-5    3-4    2-3    0-2    7-0    6-7    5-6

www.jhua.org

第二轮,固定编号1,其余编号均按逆时针方向移动-一个位置,即为该轮比赛秩序;

jhua.org

以后各轮比赛秩序以此类推,与编号0对阵的表示本轮轮空。 jhua.org

''' copyright www.jhua.org

def fun1(n):

www.jhua.org

t = list(range(1,n+1))

copyright www.jhua.org

if n % 2 == 1:

copyright jhua.org

t.APPend(0)

copyright jhua.org

n += 1 copyright www.jhua.org

for i in range(1, n): copyright www.jhua.org

print(f'{i}:', end=" ")

for j in range(n//2):

jhua.org

    print(f'{t[j]}-{t[n-1-j]}', end=" ") jhua.org

print()

copyright jhua.org

temp = t[n-1] copyright jhua.org

for j in range(n-1, 1, -1):

    t[j] = t[j-1] copyright www.jhua.org

t[1] = temp copyright www.jhua.org

''' copyright www.jhua.org

从1985年起,世界性比赛多采用"贝格""编排法。

其优点是单数队参加时可避免第二轮的轮空队从第四轮起每场都与前一轮的轮空队比赛的不合理现象。 copyright www.jhua.org

采用"贝格尔"编排法,编排时如果参赛队为双数时,

jhua.org

把参赛队数分一半(参赛队为单数时,最后以"0"表示形成双数), www.jhua.org

前一半由1号开始,自上而下写在左边;后一半的数自下而上写在右边, copyright www.jhua.org

然后用横线把相对的号数连接起来。

这即是第一轮的比赛。

copyright jhua.org

第二轮将第一轮右上角的编号("0"或最大的一个代号数)移到左角上, copyright www.jhua.org

三轮又移到右角上,以此类推。 www.jhua.org

即单数轮次时"0"或最大的一个代号在右上角,双数轮次时则在左上角。

copyright www.jhua.org

如下表示:

7 个队比赛的编排方法

copyright jhua.org

第一轮 第二轮 第三轮 第四轮 第五轮 第六轮 第七轮 jhua.org

1-0   0-5    2-0    0-6    3-0    0-7    4-0 copyright jhua.org

2-7   6-4    3-1    7-5    4-2    1-6    5-3

copyright jhua.org

3-6   7-3    4-7    1-4    5-1    2-5    6-2 copyright www.jhua.org

4-5   1-2    5-6    2-3    6-7    3-4    7-1

无论比赛队是单数还是双数,最后一轮时, www.jhua.org

必定是"0"或最大的一个代号在右上角,"1"在右下角。

jhua.org

''' www.jhua.org

def fun2(n): copyright www.jhua.org

t = list(range(1,n+1)) copyright www.jhua.org

if n % 2 == 1:

t.append(0)

copyright jhua.org

n += 1

jhua.org

for i in range(1, n): copyright www.jhua.org

if i % 2 == 1:

copyright jhua.org

    low, high = 1, n - 1

else:

    low, high = 0, n - 2 copyright jhua.org

print(f'{i}:', end=" ") copyright www.jhua.org

for j in range(n//2):

copyright www.jhua.org

    print(f'{t[j]}-{t[n-1-j]}', end=" ") copyright jhua.org

print()

jhua.org

#将右上角的编号移到左角上,其他元素逆时针移动n//2-1次 jhua.org

t[0], t[n-1] = t[n-1], t[0] www.jhua.org

for k in range(1, n//2):

copyright www.jhua.org

    temp = t[high]

copyright jhua.org

    for j in range(high, low, -1): jhua.org

        t[j] = t[j-1]

www.jhua.org

    t[low] = temp www.jhua.org

fun1(7) jhua.org

fun2(7)

copyright jhua.org

copyright jhua.org

copyright www.jhua.org

copyright www.jhua.org

相关阅读

阅读量:100000+
上一篇:各主流摄像头的
推荐量:6772
下一篇:cannot dynamically lo

'); })();