안녕하세요 프로그래밍 이제 입문하는 프린이 입니당


친구들이랑 롤 5:5 게임할때 팀 짜는 프로그램 파이썬으로 만들어보고 있는데


라이엇api 이용해서 전적 불러오는거랑 tkinter로 gui까진 다 만들었습니다.


다 만들고 실행해보니 꽤 오래걸리네요. 알고리즘이 쓰레기입니다.


알고리즘을 바꿔야하겠는데 어떻게 하면 좋을까요? 팀 밸런스가 중요합니다.



기존 알고리즘

1. 롤 닉네임 입력 x10

2. 10명이 랜덤으로 셔플

3. 전적 조회해서 티어에 숫자 매김 (브론즈는1, 실버는2, 골드는3 이런식으로)

4. a팀 5명의 숫자를 모두 합한것과 b팀의 숫자를 합한것을 비교함

5. 차이가 심하면 다시 셔플 (2로 돌아감)



기존 알고리즘대로 하면 문제가

1. 밸런스 맞을때까지 섞고 10명 전적 검색하고 반복하기에 오래걸림

2. 만약 티어가 극단적으로 분포되어 있으면 무한반복이 될 수도 있음.

3. 밸런스의 기준이 애매함.



조금이라도 도와주세요 ㅠㅠㅠ