Open kamilpipek opened 4 years ago
Ahoj,
skvělá zpráva, že můj kód byl někomu k užitku! Díky za dobrou připomínku, tento speciální případ jsem neřešil. Už nějakou dobu mám v plánu přepsat počítadlo do webové verze (dokonce už jsem něco rozdělal), ale zatím jsem se k tomu moc nedostal. Budu na tuto možnost myslet.
Díky!
Prima. Zkoumal jsem ještě tu výchozí bodou hodnotu pro nejlepšího závodníka. Ty ji bereš z maximálního počtu soupeřících škol v kterékoli z kategorií, ale podle mě (i podle výsledků z republikového a některých krajských kol) by to mělo být z maximálního počtu soupeřících škol z kategorií, které se vyhodnocují společně. Kód jsem pro tento způsob výpočtu upravil následovně:
# Zjisteni obsazenosti jednotlivych kategorii pocitanych spolecne pro vychozi bodovou znamku
team_max_3 = 0
team_max_5 = 0
team_max_79 = 0
team_max_S = 0
team_max = 0
max_cat = None
for x in team_num.keys():
if (x == "D3" or x == "H3") and (len(team_num[x]) > team_max_3):
team_max_3 = len(team_num[x])
if (x == "D5" or x == "H5") and (len(team_num[x]) > team_max_5):
team_max_5 = len(team_num[x])
if (x == "D7" or x == "H7" or x == "D9" or x == "H9") and (len(team_num[x]) > team_max_79):
team_max_79 = len(team_num[x])
if (x == "DS" or x == "HS") and (len(team_num[x]) > team_max_S):
team_max_S = len(team_num[x])
if len(team_num[x]) > team_max:
team_max = len(team_num[x])
max_cat = x
print("Maximum skol je v kategorii {}: {} skol".format(max_cat, team_max))
print("Maximum skol v kategorii DH3: {} skol".format(team_max_3))
print("Maximum skol v kategorii DH5: {} skol".format(team_max_5))
print("Maximum skol v kategorii DH79: {} skol".format(team_max_79))
print("Maximum skol v kategorii DHS: {} skol".format(team_max_S))
No je možné, že jsme si vyložili pravidla špatně. Můj výpočet jsem dělal tak, aby odpovídal výsledkům okresního přeboru Cheb 2018. Což není úplně široká testovací sada, to uznávám.
Ahoj, testoval jsem Tvůj kód na výpočet výsledků přeboru škol. Všechno pěkně funguje a je hezky minimalistické. Moc se mi to líbí. Jen jsem narazil na jednu drobnost. Když mají dva závodníci stejný čas a tím stejné umístění, přidělí se jim rozdílné body (pravděpodobně podle abecedy). Skript jsem upravil tak, že se koukám na umístění předchozího závodníka v kategorii a je-li stejné, inkrementuju body týmu i závodníka. Taky jsem upravoval maximální bodovou hodnotu pro výpočet bodů týmů, ale tam si nejsem jistý, kdo z nás chápe zadání dle pravidel přeboru škol správně (ještě se tomu budu trochu věnovat). Celý skript jsem upravoval pro výstup ze systému MeOS, takže ho mám trochu dost modifikovaný, ale upravená funkce vypadá následovně (v 'City' mám oddíl a v 'Pl' umístění) :
Díky za pěkný nápad!
Kamil Pipek LPU7310