# ====================================================================
# CAMPEONATO DE COUNTER-STRIKE - TABELA DE CLASSIFICAÇÃO
# ====================================================================
# Lista com os nomes de todos os times participantes do campeonato
times = ['Astralis', 'Na`Vi', 'G2', 'Vitality', 'Liquid', 'FURIA']
# Lista contendo todos os resultados dos jogos
# Formato: [time1, time2, placar_time1, placar_time2]
# Exemplo: ['Astralis', 'G2', 16, 10] significa que Astralis venceu G2 por 16 a 10
resultados = [
['Astralis', 'G2', 16, 10],
['Na`Vi', 'Vitality', 16, 8],
['Liquid', 'FURIA', 16, 14],
['Astralis', 'Liquid', 16, 13],
['G2', 'FURIA', 16, 12],
['Vitality', 'Astralis', 16, 14],
['Na`Vi', 'Liquid', 16, 11],
['FURIA', 'Vitality', 16, 13],
['Astralis', 'Na`Vi', 16, 12],
['G2', 'Vitality', 16, 14],
['Liquid', 'Astralis', 16, 12],
['FURIA', 'Na`Vi', 16, 14],
]
# Criamos um dicionário para guardar as estatísticas de cada time
# Para cada time, guardamos: pontos, número de jogos e número de vitórias
# Começamos tudo zerado
pontuacao = {time: {'pontos': 0, 'jogos': 0, 'vitorias': 0} for time in times}
# Agora vamos processar cada jogo e atualizar a pontuação
for jogo in resultados:
# Separamos as informações do jogo em variáveis
time1, time2, resultado1, resultado2 = jogo
# Verificamos quem ganhou e atribuímos os pontos
if resultado1 > resultado2:
# Time 1 venceu: ganha 3 pontos e conta como vitória
pontuacao[time1]['pontos'] += 3
pontuacao[time1]['vitorias'] += 1
elif resultado1 < resultado2:
# Time 2 venceu: ganha 3 pontos e conta como vitória
pontuacao[time2]['pontos'] += 3
pontuacao[time2]['vitorias'] += 1
else:
# Empate: cada time ganha 1 ponto
pontuacao[time1]['pontos'] += 1
pontuacao[time2]['pontos'] += 1
# Independente do resultado, ambos os times jogaram mais uma partida
pontuacao[time1]['jogos'] += 1
pontuacao[time2]['jogos'] += 1
# Ordenamos os times por pontos (maior primeiro) e depois por vitórias
# O "-" antes significa ordem decrescente (do maior para o menor)
classificacao = sorted(
pontuacao.items(),
key=lambda x: (-x[1]['pontos'], -x[1]['vitorias'])
)
# Agora vamos exibir a tabela de forma bonita e organizada
print('Tabela de classificação:')
print(f"{'Time':<15} {'Pontos':<10} {'Vitórias':<10} {'Jogos':<10}")
print('-' * 45) # Linha separadora
# Percorremos cada time da classificação e mostramos suas estatísticas
for time, estatisticas in classificacao:
print(f"{time:<15} {estatisticas['pontos']:<10} "
f"{estatisticas['vitorias']:<10} {estatisticas['jogos']:<10}")