import string


def get_objects_list(n, np_random_state = None):
    """
    Generates a list of (object, weight) tuples of size n
    :param n: list size
    :return: (object, weight) tuples list of size n
    """
    alphabet_string = string.ascii_uppercase
    weights = list(range(1, n + 1))
    if np_random_state:
        np_random_state.shuffle(weights)
    letters = [f'e{i}' for i,c in  enumerate(list(alphabet_string)[0: n])]
    return list(zip(letters, weights))