zoukankan      html  css  js  c++  java
  • 羽毛球友谊赛规则(附带程序)(原创)

    新闻链接:热烈庆祝电波传播实验室党支部 羽毛球赛圆满结束

    羽毛球友谊赛规则(终稿)

    一,比赛时间地点

      2018.12.21 周五 早上 900-1200

      900大家开始热身

      930正式开始淘汰赛

      淘汰赛结束后休息五分钟后进行晋级赛抽签、比赛

     

    二,淘汰赛规则

      女生、男生分别进行淘汰赛

      女生12号场地,男生3456号场地

     

      改动:淘汰赛只进行一轮一共打21个球,赢球积分、失球不积分不扣分

        积分从高到低排序,淘汰排名靠后的几个同学

        女生淘汰赛、128淘汰4

        男生淘汰赛、228淘汰14

     

      遇到临界淘汰的积分相同的同学进行一场13分制的加赛(先赢球13分的同学获胜)

     

    1 女生淘汰赛名单:

    报名序号

    姓名

    报名序号

    姓名

    比赛场地

    裁判员

    20

    24

    1

    羽毛球场地

    29

     

    15

    30

    18

    32

    14

    2

    羽毛球场地

    27

    11

    33

    31

    2 男生淘汰赛名单:

    报名序号

    姓名

    报名序号

    姓名

    比赛场地

    裁判员

    8

    21

    3

    羽毛球场地

    13

    10

    2

    5

    19

    1

    4

    羽毛球场地

    26

    17

    25

    12

    28

    4

    5

    羽毛球场地

    23

    34

    3

    22

    9

    6

    6

    羽毛球场地

    16

    7

    三,晋级赛规则

     

    1 晋级赛规则(比赛过程中空闲的场地大家可以自行组织羽毛球运动)

     

      ① 比赛前,由女生抽签决定自己的队友

     

      ② 晋级赛分为BO1BO3 分别是一轮比赛和三轮比赛

        BO1每轮比赛为13分制,只进行1轮比赛,先赢得13个积分获胜直接晋级

        BO3每轮比赛为13分制,需要赢得3轮比赛中的两轮比赛晋级,每场比赛的胜者拥有优先选边和发球权

     

      ③ 半决赛和决赛为BO3、八进四比赛为BO1

     

      ④ BO1BO3第一场比赛通过抛掷硬币决定 优先选边和发球权

     

    四,奖品

      冠军队伍:每人 一桶 羽毛球

      亚军队伍:每人 一提 安慕希纯牛奶

      季军队伍:每人 一提 蒙牛真果粒

     

      其他未获奖选手可获得牛奶一瓶

    五,附录

     

    参赛选手

     

    原始程序生成

    女生对手:

    [[20, 1, 5], [24, 1, 3],

    [29, 1, 4], [15, 1, 1],

     [30, 1, 4], [18, 2, 1],

     [32, 1, 4], [14, 1, 1],

     [27, 1, 8], [11, 1, 1],

    [33, 1, 4], [31, 2, 7]]

    男生对手:

    [[8, 1, 4], [21, 1, 6],

    [13, 2, 1], [10, 2, 4],

    [2, 1, 2], [5, 1, 4],

    [19, 1, 5], [1, 2, 1],

     [26, 2, 7], [17, 1, 4],

    [25, 1, 4], [12, 1, 1],

    [28, 1, 2], [4, 1, 3],

    [23, 1, 6], [34, 1, 1],

    [3, 1, 1], [22, 1, 6],

    [9, 2, 4], [6, 2, 1],

     [16, 2, 1], [7, 2, 4]]

    程序:

      1 import numpy as np
      2 
      3 import copy
      4 
      5  
      6 
      7 # 数字化处理
      8 
      9 ladies = [[11, 1, 1],
     10 
     11           [14, 1, 1],
     12 
     13           [15, 1, 1],
     14 
     15           [18, 2, 1],
     16 
     17           [20, 1, 5],
     18 
     19           [24, 1, 3],
     20 
     21           [27, 1, 8],
     22 
     23           [29, 1, 4],
     24 
     25           [30, 1, 4],
     26 
     27           [31, 2, 7],
     28 
     29           [32, 1, 4],
     30 
     31           [33, 1, 4]]
     32 
     33  
     34 
     35 men = [[1, 2, 1],
     36 
     37        [2, 1, 2],
     38 
     39        [3, 1, 1],
     40 
     41        [4, 1, 3],
     42 
     43        [5, 1, 4],
     44 
     45        [6, 2, 1],
     46 
     47        [7, 2, 4],
     48 
     49        [8, 1, 4],
     50 
     51        [9, 2, 4],
     52 
     53        [10, 2, 4],
     54 
     55        [12, 1, 1],
     56 
     57        [13, 2, 1],
     58 
     59        [16, 2, 1],
     60 
     61        [17, 1, 4],
     62 
     63        [19, 1, 5],
     64 
     65        [21, 1, 6],
     66 
     67        [22, 1, 6],
     68 
     69        [23, 1, 6],
     70 
     71        [25, 1, 4],
     72 
     73        [26, 2, 7],
     74 
     75        [28, 1, 2],
     76 
     77        [34, 1, 1]]
     78 
     79  
     80 
     81 # print(ladies)
     82 
     83 # print(men)
     84 
     85  
     86 
     87  
     88 
     89 # 女生生成随机对手
     90 
     91 list_ladies = []
     92 
     93 active = 1
     94 
     95 while active:
     96 
     97  
     98 
     99     data_mid = copy.deepcopy(ladies)
    100 
    101     len_lady = len(data_mid)
    102 
    103  
    104 
    105     for i in range(int(len_lady / 2)):
    106 
    107         print(i)
    108 
    109         # 选取第一个选手,并加载到队列中
    110 
    111         select0 = np.random.randint(0, len_lady)
    112 
    113         data0 = data_mid[select0]
    114 
    115         list_ladies.append(data0)
    116 
    117         data_mid.pop(select0)  # 在中间变量中删除
    118 
    119         len_lady -= 1
    120 
    121  
    122 
    123         # 选取第二个互斥选手,加入队列中
    124 
    125         select1 = np.random.randint(0, len_lady)
    126 
    127         data1 = data_mid[select1]
    128 
    129         if data0[2] == data1[2]:
    130 
    131             list_ladies = []
    132 
    133             break
    134 
    135         else:
    136 
    137             list_ladies.append(data1)
    138 
    139             data_mid.pop(select1)
    140 
    141             len_lady -= 1
    142 
    143  
    144 
    145         if i == int(len_lady / 2) - 1:
    146 
    147             active = 0
    148 
    149  
    150 
    151 print(list_ladies)
    152 
    153  
    154 
    155 # 男生生成随机对手
    156 
    157 # 程序的循环有些问题
    158 
    159 active = 1
    160 
    161 while active:
    162 
    163     list_men = []
    164 
    165     data_mid = copy.deepcopy(men)
    166 
    167     len_man = len(data_mid)
    168 
    169     for i in range(int(len_man / 2)):
    170 
    171         # print(i)
    172 
    173         # 选取第一个选手,并加载到队列中
    174 
    175         select0 = np.random.randint(0, len_man)
    176 
    177         data0 = data_mid[select0]
    178 
    179         list_men.append(data0)
    180 
    181         data_mid.pop(select0)  # 在中间变量中删除
    182 
    183         len_man -= 1
    184 
    185  
    186 
    187         # 选取第二个互斥选手,加入队列中
    188 
    189         while 1:
    190 
    191             select1 = np.random.randint(0, len_man)
    192 
    193             data1 = data_mid[select1]
    194 
    195             # 如果随机到的对手实验室相同,重新选择
    196 
    197             if data0[2] == data1[2]:
    198 
    199                 # print(data1)
    200 
    201                 pass
    202 
    203             else:
    204 
    205                 list_men.append(data1)
    206 
    207                 data_mid.pop(select1)
    208 
    209                 len_man -= 1
    210 
    211                 break
    212 
    213  
    214 
    215         if i == int(len_man / 2) - 1:
    216 
    217             active = 0
    218 
    219         print(list_men)
    220 
    221  
    222 
    223 print(list_men)
  • 相关阅读:
    学习资料(干货汇集)
    Android安全系列之:如何在native层保存关键信息
    IntelliJ IDEA 2019 快捷键终极大全,速度收藏!
    【转】45个实用的JavaScript技巧、窍门和最佳实践
    Android中jsoup的混淆规则【转】
    Android WebServer相关项目
    【转】实战nanoHTTPD嵌入android app(3)
    【.net 深呼吸】程序集的热更新
    【WCF】使用“用户名/密码”验证的合理方法
    【Win 10 应用开发】应用预启动
  • 原文地址:https://www.cnblogs.com/Mufasa/p/10488548.html
Copyright © 2011-2022 走看看