根据某条件聚类最少交换次数
标题:根据某条件聚类最少交换次数 | 时间限制:1秒 | 内存限制:262144K | 语言限制:不限
给出数字K,请输出所有结果小于K的整数组合到一起的最少交换次数。
组合一起是指满足条件的数字相邻,不要求相邻后在数组中的位置。
while True: try: list1 = input().strip().split() k = int(input()) list_index, list2 = [], [] for i in range(len(list1)): list2.append(i) if int(list1[i]) < k: list_index.append(i) len_num = len(list_index) max_num = 0 for index in list_index: num = len(set(list_index) & set(list2[index:index + len_num])) if num > max_num: max_num = num min = len_num - max_num print(min) except: break