楼主咱俩一套卷纸,第一题没交上求大家帮我看看思路对不对.... 我的思路是最后a肯定要拿完,所以答案一定是sum(a)-(所有减的数的和) 然后既然最大和,肯定要减越少越好,每次数相减都要减去len(当前a)-1个b中的数,要让这些减数的和最小,每次都找b中最小的len(当前a)-1个数去减对应ai,因此给b排序,每次pop出b最大的数使剩下的是b中最小的len(当前a)-1个数,然后这一轮减数的和就是sum(b),更新减数总值sub+=sum(b)直到取到最后一个a中的数,最后用sum(a)-sub即可。。。。 na = 5 nb = 5 a = [10,20,30,40,50] b = [4,5,6,7,8] b_sort = sorted(b) sub = 0 for i in range(na-1): b_sort.pop() sub += sum(b_sort) res = sum(a)-sub print(res)
点赞 9

相关推荐

不愿透露姓名的神秘牛友
07-02 15:39
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
但听说转正率很低,我现在有在实习了,好纠结要不要去
熬夜脱发码农:转正率低归低,但是实习的经历你可以拿着,又不是说秋招不准备了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务