def get_inversions_rating(self): rating_sum = count = 0 for perm in itertools.permutations(range(self.numLines)): inputs = list(perm) out = self.sort(inputs) rating_sum += utils.inversionCount(out) count += 1 rating = rating_sum / float(count) return rating
def get_maxinv_rating(self): rating = -1 maxseq = [] for perm in itertools.permutations(range(self.numLines)): inputs = list(perm) out = self.sort(inputs) new_rating = utils.inversionCount(out) if rating < new_rating: rating = new_rating maxseq = inputs return (rating, maxseq)