赞
踩
题目:
**
**
考察内容:
排序(sort)+求和(sum)+ 数学转化 + 循环(从小开始)+break
代码:
""" 题目分析: a和b初始总算力不同 从A组中选出的算力尽可能小 交换以后,a和b的算力相等 输入: L1 A int(cpu数量) L2 B int (cpu数量) A 算力值 list B 算力值 list 输出: A选出的算力 B选出来的算力 eg: 2 2 1 1 3 3 2 2 1 1 2 2 4 4 1 2 3 4 5 10 11 17 思路: 数学转化 sum_a - min_a + any_b = sum_b + min_a - any_b """ level1, level2 = map(int, (input().split())) a = list(map(int, input().split())) b = list(map(int, input().split())) # 排序 a.sort(reverse=False) b.sort(reverse=False) # 求算力 a_sum = sum(a) b_sum = sum(b) difference = a_sum - b_sum # a尽可能小,从小开始遍历 for i in range(len(a)): temp = int(abs(a_sum - a[i] - b_sum - a[i]) / 2) if temp in b: print(a[i], temp) break
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。