great8 -> great12
This commit is contained in:
33
great12/roundrobin.py
Executable file
33
great12/roundrobin.py
Executable file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/python2
|
||||
# -*- coding: utf-8 -*-
|
||||
def roundRobin(units, sets=None):
|
||||
""" Generates a schedule of "fair" pairings from a list of units """
|
||||
if len(units) % 2:
|
||||
units.append(None)
|
||||
count = len(units)
|
||||
sets = sets or (count - 1)
|
||||
half = count / 2
|
||||
schedule = []
|
||||
for turn in range(sets):
|
||||
pairings = []
|
||||
for i in range(half):
|
||||
pairings.append((units[i], units[count-i-1]))
|
||||
units.insert(1, units.pop())
|
||||
schedule.append(pairings)
|
||||
return schedule
|
||||
|
||||
# LOR sheduler
|
||||
|
||||
players = ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12"]
|
||||
tour_count = 0
|
||||
|
||||
# Generate LORCODE for pairings.
|
||||
# Also generate "reversal" for autumm season.
|
||||
for pairings in roundRobin(players):
|
||||
tours = (len(players) - 1) * 2
|
||||
tour_count = tour_count + 1
|
||||
print "[b]Тур №" + str(tour_count) + "[/b]"
|
||||
print "[list]"
|
||||
for pair in pairings:
|
||||
print "[*]" + pair[0] + " играет против " + pair[1]
|
||||
print "[/list]"
|
Reference in New Issue
Block a user