Skip to content

Instantly share code, notes, and snippets.

@seppo0010
Created November 26, 2022 11:49
Show Gist options
  • Save seppo0010/e73d42622f39a0ec33f543f3c6db51f0 to your computer and use it in GitHub Desktop.
Save seppo0010/e73d42622f39a0ec33f543f3c6db51f0 to your computer and use it in GitHub Desktop.
Combinaciones al 26/11/22, antes del partido de Polonia-Arabia Saudita

Escenario 1

Polonia le gana a Arabia Saudita

Argentina le gana a México

Argentina empata con Polonia

México le gana a Arabia Saudita

Equipo Puntos DG
Polonia 5 +g_po_as
México 4 -g_ar_me+g_me_as
Argentina 4 -1+g_ar_me
Arabia Saudita 3 1-g_po_as-g_me_as

Escenario 2

Polonia le gana a Arabia Saudita

Argentina le gana a México

Argentina empata con Polonia

Arabia Saudita le gana a México

Equipo Puntos DG
Arabia Saudita 6 1-g_po_as+g_as_me
Polonia 5 +g_po_as
Argentina 4 -1+g_ar_me
México 1 -g_ar_me-g_as_me

Escenario 3

Polonia le gana a Arabia Saudita

Argentina le gana a México

Argentina empata con Polonia

México empata con Arabia Saudita

Equipo Puntos DG
Polonia 5 +g_po_as
Argentina 4 -1+g_ar_me
Arabia Saudita 4 1-g_po_as
México 2 -g_ar_me

Escenario 4

Polonia le gana a Arabia Saudita

Argentina empata con México

Argentina le gana a Polonia

México le gana a Arabia Saudita

Equipo Puntos DG
México 5 +g_me_as
Polonia 4 +g_po_as-g_ar_po
Argentina 4 -1+g_ar_po
Arabia Saudita 3 1-g_po_as-g_me_as

Escenario 5

Polonia le gana a Arabia Saudita

Argentina empata con México

Argentina le gana a Polonia

Arabia Saudita le gana a México

Equipo Puntos DG
Arabia Saudita 6 1-g_po_as+g_as_me
Polonia 4 +g_po_as-g_ar_po
Argentina 4 -1+g_ar_po
México 2 -g_as_me

Escenario 6

Polonia le gana a Arabia Saudita

Argentina empata con México

Argentina le gana a Polonia

México empata con Arabia Saudita

Equipo Puntos DG
Polonia 4 +g_po_as-g_ar_po
Argentina 4 -1+g_ar_po
Arabia Saudita 4 1-g_po_as
México 3 0

Escenario 7

Arabia Saudita le gana a Polonia

Argentina le gana a México

Argentina empata con Polonia

México le gana a Arabia Saudita

Equipo Puntos DG
Arabia Saudita 6 1+g_as_po-g_me_as
México 4 -g_ar_me+g_me_as
Argentina 4 -1+g_ar_me
Polonia 2 -g_as_po

Escenario 8

Arabia Saudita le gana a Polonia

Argentina le gana a México

Argentina empata con Polonia

Arabia Saudita le gana a México

Equipo Puntos DG
Arabia Saudita 9 1+g_as_po+g_as_me
Argentina 4 -1+g_ar_me
Polonia 2 -g_as_po
México 1 -g_ar_me-g_as_me

Escenario 9

Arabia Saudita le gana a Polonia

Argentina le gana a México

Argentina empata con Polonia

México empata con Arabia Saudita

Equipo Puntos DG
Arabia Saudita 7 1+g_as_po
Argentina 4 -1+g_ar_me
Polonia 2 -g_as_po
México 2 -g_ar_me

Escenario 10

Arabia Saudita le gana a Polonia

Argentina empata con México

Argentina le gana a Polonia

México le gana a Arabia Saudita

Equipo Puntos DG
Arabia Saudita 6 1+g_as_po-g_me_as
México 5 +g_me_as
Argentina 4 -1+g_ar_po
Polonia 1 -g_as_po-g_ar_po

Escenario 11

Arabia Saudita le gana a Polonia

Argentina empata con México

Argentina le gana a Polonia

Arabia Saudita le gana a México

Equipo Puntos DG
Arabia Saudita 9 1+g_as_po+g_as_me
Argentina 4 -1+g_ar_po
México 2 -g_as_me
Polonia 1 -g_as_po-g_ar_po

Escenario 12

Arabia Saudita le gana a Polonia

Argentina empata con México

Argentina le gana a Polonia

México empata con Arabia Saudita

Equipo Puntos DG
Arabia Saudita 7 1+g_as_po
Argentina 4 -1+g_ar_po
México 3 0
Polonia 1 -g_as_po-g_ar_po

Escenario 13

Polonia empata con Arabia Saudita

Argentina le gana a México

Argentina empata con Polonia

México le gana a Arabia Saudita

Equipo Puntos DG
México 4 -g_ar_me+g_me_as
Argentina 4 -1+g_ar_me
Arabia Saudita 4 1-g_me_as
Polonia 3 0

Escenario 14

Polonia empata con Arabia Saudita

Argentina le gana a México

Argentina empata con Polonia

Arabia Saudita le gana a México

Equipo Puntos DG
Arabia Saudita 7 1+g_as_me
Argentina 4 -1+g_ar_me
Polonia 3 0
México 1 -g_ar_me-g_as_me

Escenario 15

Polonia empata con Arabia Saudita

Argentina le gana a México

Argentina empata con Polonia

México empata con Arabia Saudita

Equipo Puntos DG
Arabia Saudita 5 1
Argentina 4 -1+g_ar_me
Polonia 3 0
México 2 -g_ar_me

Escenario 16

Polonia empata con Arabia Saudita

Argentina empata con México

Argentina le gana a Polonia

México le gana a Arabia Saudita

Equipo Puntos DG
México 5 +g_me_as
Argentina 4 -1+g_ar_po
Arabia Saudita 4 1-g_me_as
Polonia 2 -g_ar_po

Escenario 17

Polonia empata con Arabia Saudita

Argentina empata con México

Argentina le gana a Polonia

Arabia Saudita le gana a México

Equipo Puntos DG
Arabia Saudita 7 1+g_as_me
Argentina 4 -1+g_ar_po
Polonia 2 -g_ar_po
México 2 -g_as_me

Escenario 18

Polonia empata con Arabia Saudita

Argentina empata con México

Argentina le gana a Polonia

México empata con Arabia Saudita

Equipo Puntos DG
Arabia Saudita 5 1
Argentina 4 -1+g_ar_po
México 3 0
Polonia 2 -g_ar_po
@seppo0010
Copy link
Author

Source:

from copy import deepcopy

POLONIA = 'Polonia'
MEXICO = 'México'
ARGENTINA = 'Argentina'
ARABIA_SAUDITA = 'Arabia Saudita'
abbr = {POLONIA: "po", MEXICO: "me", ARGENTINA: "ar", ARABIA_SAUDITA: "as"}
initial = {
    POLONIA: {'points': 1, 'gd': []},
    MEXICO: {'points': 1, 'gd': []},
    ARGENTINA: {'points': 0, 'gd': ["-1"]},
    ARABIA_SAUDITA: {'points': 3, 'gd': ["1"]},
}
counter = 0

# Polonia - Arabia Saudita
# Argentina - México
# Polonia - Argentina
# México - Arabia Saudita

for r1 in [
    {'points': {POLONIA: 3}, 'winner': POLONIA},
    {'points': {ARABIA_SAUDITA: 3}, 'winner': ARABIA_SAUDITA},
    {'points': {POLONIA: 1, ARABIA_SAUDITA: 1}},
]:
    r1_teams = [POLONIA, ARABIA_SAUDITA]
    for r2 in [
        {'points': {ARGENTINA: 3}, 'winner': ARGENTINA},
        {'points': {ARGENTINA: 1, MEXICO: 1}},
    ]:
        r2_teams = [ARGENTINA, MEXICO]
        for r3 in [
            {'points': {ARGENTINA: 3}, 'winner': ARGENTINA},
            {'points': {ARGENTINA: 1, POLONIA: 1}},
        ]:
            r3_teams = [ARGENTINA, POLONIA]
            for r4 in [
                {'points': {MEXICO: 3}, 'winner': MEXICO},
                {'points': {ARABIA_SAUDITA: 3}, 'winner': ARABIA_SAUDITA},
                {'points': {MEXICO: 1, ARABIA_SAUDITA: 1}},
            ]:
                r4_teams = [MEXICO, ARABIA_SAUDITA]
                points = deepcopy(initial)
                history = []
                for (r, teams) in ((r1, r1_teams), (r2, r2_teams), (r3, r3_teams), (r4, r4_teams)):
                    for (t, p) in r['points'].items():
                        points[t]['points'] += p
                    if 'winner' in r:
                        loser = [t for t in teams if t != r['winner']][0]
                        points[r['winner']]['gd'].append(f'+g_{abbr[r["winner"]]}_{abbr[loser]}')
                        points[loser]['gd'].append(f'-g_{abbr[r["winner"]]}_{abbr[loser]}')
                        history.append(f'{r["winner"]} le gana a {loser}')
                    else:
                        history.append(f'{teams[0]} empata con {teams[1]}')
                if points[ARGENTINA]['points'] != 4:
                    continue
                counter += 1
                print(f'# Escenario {counter}\n')
                for h in history:
                    print(h)
                    print('')
                print('| Equipo | Puntos | DG |')
                print('| -- | -- | -- |')
                for (t, val) in sorted(points.items(), key=lambda v: -v[1]['points']):
                    gd = "".join(val['gd'])
                    if gd == "":
                        gd = "0"
                    print(f'| {t} | {val["points"]} | {gd} |')
                print('')

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment