def binom(n, k):
    if k == 0 or k == n:
        return 1
    else:
        return binom(n-1, k-1) + binom(n-1, k)


def binom2(n, k):
    d = {} # d[(n,k)] je že prej izračunana vrednost binomskega koeficienta C(n,k)

    def b(n,k):
        if (n,k) in d:
            return d[(n,k)]
        elif k == 0 or k == n:
            return 1
        else:
            r = b(n-1,k-1) + b(n-1, k)
            d[(n,k)] = r
            return r

    return b(n,k)


print(binom2(200,100))