refactor: pairing algorithm

This commit is contained in:
DvRodri8 2023-12-13 17:26:18 +01:00
commit fcd9650701
Signed by: DVRodri8
GPG key ID: 803626926BE41D50

View file

@ -15,20 +15,10 @@ class Group(BaseModel):
@staticmethod @staticmethod
def pair(names: list[str]) -> dict[str, str]: def pair(names: list[str]) -> dict[str, str]:
names_copy = names[:] random.shuffle(names)
random.shuffle(names_copy) names_copy = names[1:]
names_copy.append(names[0])
pairings = {} return dict(zip(names, names_copy))
for i, name in enumerate(names):
pair = names_copy[i]
while pair == name:
random.shuffle(names_copy)
pair = names_copy[i]
pairings[name] = pair
return pairings
class IRepo(ABC): class IRepo(ABC):
@abstractmethod @abstractmethod