import itertools from collections import Counter k = int(input("请输入整数:")) num_set = [num for num in range(1, k+1)] arr_set = list(itertools.permutations(num_set, len(num_set))) s_n = [] for arr in arr_set: add = 0 # 求和 for i, num in enumerate(arr, 1): add = add + abs(num - i) s_n.append(add) sn = sorted(s_n) print("求和后的情况:{}".format(sn)) h = dict(sorted(Counter(sn).items(), key=lambda x:x[0], reverse=False)) print("统计后列表的次数:{}".format(h)) # 统计次数