Advertisement
Guest User

análise libertadores da américa

a guest
Sep 9th, 2022
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.55 KB | Sports | 0 0
  1. from collections import defaultdict
  2.  
  3. DATA = [
  4.     ('Independiente', 'Argentina', (1964, 1965, 1972, 1973, 1974, 1975, 1984)),
  5.     ('Boca Juniors', 'Argentina', (1977, 1978, 2000, 2001, 2003, 2007)),
  6.     ('Peñarol', 'Uruguai', (1960, 1961, 1966, 1982, 1987)),
  7.     ('River Plate', 'Argentina', (1986, 1996, 2015, 2018)),
  8.     ('Estudiantes', 'Argentina', (1968, 1969, 1970, 2009)),
  9.     ('Olimpia', 'Paraguai', (1979, 1990, 2002)),
  10.     ('Nacional', 'Uruguai', (1971, 1980, 1988)),
  11.     ('São Paulo', 'Brasil', (1992, 1993, 2005)),
  12.     ('Palmeiras', 'Brasil', (1999, 2020, 2021)),
  13.     ('Grêmio', 'Brasil', (1983, 1995, 2017)),
  14.     ('Santos', 'Brasil', (1962, 1963, 2011)),
  15.     ('Cruzeiro', 'Brasil', (1976, 1997)),
  16.     ('Internacional', 'Brasil', (2006, 2010)),
  17.     ('Atlético Nacional', 'Colômbia', (1989, 2016)),
  18.     ('Flamengo', 'Brasil', (1981, 2019)),
  19.     ('Colo-Colo', 'Chile', (1991,)),
  20.     ('San Lorenzo', 'Argentina', (2014,)),
  21.     ('Vélez Sarsfield', 'Argentina', (1994,)),
  22.     ('Racing', 'Argentina', (1967,)),
  23.     ('LDU Quito', 'Equador', (2008,)),
  24.     ('Atlético Mineiro', 'Brasil', (2013,)),
  25.     ('Argentinos Juniors', 'Argentina', (1985,)),
  26.     ('Corinthians', 'Brasil', (2012,)),
  27.     ('Vasco da Gama', 'Brasil', (1998,)),
  28.     ('Once Caldas', 'Colômbia', (2004,)),
  29. ]
  30.  
  31. ANO_DE_CORTE = 1990
  32.  
  33. def printar_formatado(itens):
  34.     for item in sorted(itens, key=lambda x: x[1], reverse=True):
  35.         print(*item)
  36.  
  37. def main():
  38.     titulos_por_pais = defaultdict(int)
  39.  
  40.     for clube, pais, titulos in DATA:
  41.         titulos_por_pais[pais] += sum(1 for ano in titulos if ano >= ANO_DE_CORTE)
  42.  
  43.     print(f'Titulos por país após {ANO_DE_CORTE}')
  44.     printar_formatado(titulos_por_pais.items())
  45.     print()
  46.  
  47.     clubes_campeoes = defaultdict(set)
  48.  
  49.     for clube, pais, titulos in DATA:
  50.         if any(1 for ano in titulos if ano >= ANO_DE_CORTE):
  51.             clubes_campeoes[pais].add(clube)
  52.  
  53.     clubes_campeoes = [(pais, len(clubes)) for pais, clubes in clubes_campeoes.items()]
  54.  
  55.     print(f'Clubes campeões após {ANO_DE_CORTE}')
  56.     printar_formatado(clubes_campeoes)
  57.     print()
  58.  
  59.     clubes_multicampeoes = defaultdict(set)
  60.  
  61.     for clube, pais, titulos in DATA:
  62.         if sum(1 for ano in titulos if ano >= ANO_DE_CORTE) > 1:
  63.             clubes_multicampeoes[pais].add(clube)
  64.  
  65.     clubes_multicampeoes = [(pais, len(clubes)) for pais, clubes in clubes_multicampeoes.items()]
  66.  
  67.     print(f'Clubes multicampeões após {ANO_DE_CORTE}')
  68.     printar_formatado(clubes_multicampeoes)
  69.     print()
  70.  
  71. if __name__ == '__main__':
  72.     main()
  73.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement