Вот несколько методов на Python, позволяющих определить победителя футбольного турнира по команде, забившей наибольшее количество голов:
Метод 1: использование словаря командных результатов
def determine_winner(scores):
team_scores = {}
for match in scores:
team1, team2, goals1, goals2 = match
team_scores[team1] = team_scores.get(team1, 0) + goals1
team_scores[team2] = team_scores.get(team2, 0) + goals2
winner = max(team_scores, key=team_scores.get)
return winner
# Example usage
tournament_scores = [
("Team A", "Team B", 2, 1),
("Team C", "Team D", 3, 2),
("Team A", "Team C", 1, 0),
("Team B", "Team D", 2, 2),
("Team A", "Team D", 3, 1),
("Team B", "Team C", 0, 1)
]
tournament_winner = determine_winner(tournament_scores)
print("The winner of the tournament is:", tournament_winner)
Выход:
The winner of the tournament is: Team A
Метод 2: использование DefaultDict
from collections import defaultdict
def determine_winner(scores):
team_scores = defaultdict(int)
for match in scores:
team1, team2, goals1, goals2 = match
team_scores[team1] += goals1
team_scores[team2] += goals2
winner = max(team_scores, key=team_scores.get)
return winner
# Example usage
tournament_scores = [
("Team A", "Team B", 2, 1),
("Team C", "Team D", 3, 2),
("Team A", "Team C", 1, 0),
("Team B", "Team D", 2, 2),
("Team A", "Team D", 3, 1),
("Team B", "Team C", 0, 1)
]
tournament_winner = determine_winner(tournament_scores)
print("The winner of the tournament is:", tournament_winner)
Выход:
The winner of the tournament is: Team A
Метод 3: использование счетчика
from collections import Counter
def determine_winner(scores):
team_scores = Counter()
for match in scores:
team1, team2, goals1, goals2 = match
team_scores[team1] += goals1
team_scores[team2] += goals2
winner = team_scores.most_common(1)[0][0]
return winner
# Example usage
tournament_scores = [
("Team A", "Team B", 2, 1),
("Team C", "Team D", 3, 2),
("Team A", "Team C", 1, 0),
("Team B", "Team D", 2, 2),
("Team A", "Team D", 3, 1),
("Team B", "Team C", 0, 1)
]
tournament_winner = determine_winner(tournament_scores)
print("The winner of the tournament is:", tournament_winner)
Выход:
The winner of the tournament is: Team A