|
|
|
@ -62,7 +62,9 @@ struct HeadManagerView: View { |
|
|
|
} |
|
|
|
} |
|
|
|
while leftToPlace(heads: heads, teamsPerRound: teamsPerRound) > 0 { |
|
|
|
while leftToPlace(heads: heads, teamsPerRound: teamsPerRound) > 0 { |
|
|
|
// maxAssignable: On retire toutes les équipes placées dans les tours précédents, pondérées par leur propagation (puissance du tour) |
|
|
|
// maxAssignable: On retire toutes les équipes placées dans les tours précédents, pondérées par leur propagation (puissance du tour) |
|
|
|
let headsLeft = heads - teamsPerRound.reduce(0, +) |
|
|
|
let alreadyPut = teamsPerRound.reduce(0, +) |
|
|
|
|
|
|
|
let headsLeft = alreadyPut == 0 ? teamsInBracket : heads - alreadyPut |
|
|
|
|
|
|
|
|
|
|
|
// Calculate how many teams from previous rounds propagate to this round |
|
|
|
// Calculate how many teams from previous rounds propagate to this round |
|
|
|
let currentRound = teamsPerRound.count |
|
|
|
let currentRound = teamsPerRound.count |
|
|
|
var previousTeams = 0 |
|
|
|
var previousTeams = 0 |
|
|
|
@ -150,7 +152,7 @@ struct HeadManagerView: View { |
|
|
|
} |
|
|
|
} |
|
|
|
result = RoundRule.cumulatedNumberOfMatches(forTeams: count) |
|
|
|
result = RoundRule.cumulatedNumberOfMatches(forTeams: count) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
print(index, value, result, count) |
|
|
|
return result |
|
|
|
return result |
|
|
|
} |
|
|
|
} |
|
|
|
.reduce(0, +) |
|
|
|
.reduce(0, +) |
|
|
|
|