def num_offsets(classes, arity, blocksize): result = 1 remaining = blocksize for i in range(arity): result *= binomial(remaining, classes[i]) remaining -= classes[i] return result
def getMaxClass(arity, blocksize): return binomial(arity + blocksize - 1, arity - 1)