from itertools import product
values = "23456789TJKQKA"
suits = "DCHS"
cards = set([f"{x}{y}" for x, y in product(values, suits)])

def solve(a, b):
    start = set(cards)
    for x in a:
        vs, ss = [e for e in x if e in values], [e for e in x if e in suits]
        if len(vs) == 0:
            vs = values
        if len(ss) == 0:
            ss = suits
        start -= set([f"{u}{v}" for u, v in product(vs, ss)])
    
    M = len(start)
    print(M)
    oks = set()
    for x in b:
        vs, ss = [e for e in x if e in values], [e for e in x if e in suits]
        if len(vs) == 0:
            vs = values
        if len(ss) == 0:
            ss = suits
        oks |= set([f"{u}{v}" for u, v in product(vs, ss)])
    N = len(oks)
    print(N)
    return f"{round(N / M * 100)}%"
    


a, b = ("45C", ), ("7", "H")
print(solve(a, b))

Embed on website

To embed this program on your website, copy the following code and paste it into your website's HTML: