(independent_groups, max_group_size)
return dissimilar_pairs
如果q1, q2不相似，且存在连通图cc1包含q1，和cc2包含q2，则cc1和cc2的任意组合均不相似
    max_group_size用来控制返回的问题对数量，设为46，对应100万左右的问题对
如果q1, q2不相似，且存在连通图cc1包含q1，和cc2包含q2，则cc1和cc2的任意组合均不相似
    max_group_size用来控制返回的问题对数量，设为46，对应100万左右的问题对
如果q1 q2不相似，且存在连通图cc1包含q1，和cc2包含q2，则cc1和cc2的任意组合均不相似 max_group_size用来控制返回的问题对数量，设为46，对应100万左右的问题对
def gen_dissimilar_data(independent_groups, max_group_size):
    '''
    如果q1, q2不相似，且存在连通图cc1包含q1，和cc2包含q2，则cc1和cc2的任意组合均不相似
    max_group_size用来控制返回的问题对数量，设为46，对应100万左右的问题对
    '''
    dissimilar_pairs = set()  
    for ig in independent_groups:
        cc1 = ig[0]
        cc2 = ig[1]
        # 限制连通图大小，不然太多了
        if len(cc1) < max_group_size and len(cc2) < max_group_size:
            for q1 in cc1:
                for q2 in cc2:
                    dissimilar_pairs.add((q1, q2))
    return dissimilar_pairs
def gen_dissimilar_data ( independent_groups , max_group_size ) : dissimilar_pairs = set ( ) for ig in independent_groups : cc1 = ig [ 0 ] cc2 = ig [ 1 ] # 限制连通图大小，不然太多了 if len ( cc1 ) < max_group_size and len ( cc2 ) < max_group_size : for q1 in cc1 : for q2 in cc2 : dissimilar_pairs . add ( ( q1 , q2 ) ) return dissimilar_pairs